Signal Exports



Collective2 is a service that connects strategy developers and capital allocators. With our Collective2 integration, you can send trading signals from your live algorithms to Collective2.

Add Providers

To export signals to Collective2 from your algorithm, during initialization, add a Collective2 signal export provider.

SignalExport.AddSignalExportProviders(new Collective2SignalExport(apiKey, systemId, platformId));
self.signal_export.add_signal_export_providers(Collective2SignalExport(apiKey, systemId, platformId))

The Collective2SignalExport constructor accepts the following arguments:

Argument: apiKey

Your Collective2 API key. To get your API key, see Where can I find my API key? on the Collective2 website.

Data Type: stringstr | Default Value: None

Argument: systemId

Your Collective2 strategy Id. To get your strategy Id, see How do I find my strategy ID? on the Collective2 website.

Data Type: int | Default Value: None

Argument: platformId

Your Platform Id from Collective2. You only need to provide this in the Private Platform Context. For more information on the World and Private Platform contexts, see Which context: "World" or "Private Platform?" in the Collective2 API Documentation. For instructions on using the Private Platform API, see the Using the API section in their documentation.

Data Type: stringstr | Default Value: ""

You can add multiple signal export providers to a single algorithm.

Asset Classes

Our Collective2 integration supports signals for the following asset classes:

Send Portfolio Targets

To send targets to Collective2, pass a PortfolioTarget object or an arraya list of PortfolioTarget objects to the SetTargetPortfolio method. The method returns a boolean that represents if the targets were successfully sent to Collective2. In this situation, the number you pass to the PortfolioTarget constructor represents the portfolio weight. Don't use the PortfolioTarget.Percent method.

var target = new PortfolioTarget(_symbol, weight);
var success = SignalExport.SetTargetPortfolio(target);
target = PortfolioTarget(self.symbol, weight)
success = self.signal_export.set_target_portfolio(target)

If you use a margin account, you can send your current portfolio holdings by calling the SetTargetPortfolioFromPortfolio method.

var success = SignalExport.SetTargetPortfolioFromPortfolio();
success = self.signal_export.set_target_portfolio_from_portfolio()

You can also see our Videos. You can also get in touch with us via Discord.

Did you find this page helpful?

Contribute to the documentation: