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: apiKeyapi_key

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: systemIdsystem_id

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: platformIdplatform_id

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 SetTargetPortfolioset_target_portfolio 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.PercentPortfolioTarget.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 SetTargetPortfolioFromPortfolioset_target_portfolio_from_portfolio 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: