Strategy subscription#
About#
Strategy subscription
Fields#
Name | Type | Required | Description |
---|---|---|---|
strategyId | string | Yes | id of the strategy to subscribe to |
multiplier | number | subscription multiplier, default is 1x | |
skipPendingOrders | boolean | flag indicating that pending orders should not be copied. Default is to copy pending orders | |
closeOnly | string | setting wich instructs the application not to open new positions. by-symbol means that it is still allowed to open new positions with a symbol equal to the symbol of an existing strategy position (can be used to gracefuly exit strategies trading in netting mode or placing a series of related trades per symbol). immediately means to close all positions immediately . One of by-position , by-symbol , immediately |
|
maxTradeRisk | number | max risk per trade, expressed as a fraction of 1. If trade has a SL, the trade size will be adjusted to match the risk limit. If not, the trade SL will be applied according to the risk limit | |
reverse | boolean | flag indicating that the strategy should be copied in a reverse direction | |
reduceCorrelations | string | setting indicating whether to enable automatic trade correlation reduction. Possible settings are not specified (disable correlation risk restrictions), by-strategy (limit correlations on strategy level) or by-symbol (limit correlations on symbol level) |
|
symbolFilter | StrategySymbolF... | symbol filter which can be used to copy only specific symbols or exclude some symbols from copying | |
newsFilter | StrategyNewsFilter | news risk filter configuration | |
riskLimits | Array<StrategyR...> | strategy risk limits. You can configure trading to be stopped once total drawdown generated during specific period is exceeded. Can be specified either for balance or equity drawdown | |
maxStopLoss | StrategyMaxSto... | stop loss value restriction | |
maxLeverage | number | setting indicating maxumum leverage allowed when opening a new positions. Any trade which results in a higher leverage will be discarded | |
symbolMapping | Array<SymbolM...> | defines how symbol name should be changed when trading (e.g. when broker uses symbol names with unusual suffixes). By default this setting is disabled and the trades are copied using signal source symbol name | |
tradeSizeScaling | StrategyTrade... | Trade size scaling settings. By default the trade size on strategy subscriber side will be scaled according to balance to preserve risk. | |
copyStopLoss | boolean | flag indicating whether stop loss should be copied. Default is to copy stop loss. | |
copyTakeProfit | boolean | flag indicating whether take profit should be copied. Default is to copy take profit. | |
allowedSides | Array<string> | Trade sides which will be copied. Buy trades only, sell trades only or all trades. Default is to copy all trades | |
minTradeVolume | number | Minimum trade volume to copy. Trade signals with a smaller volume will not be copied | |
maxTradeVolume | number | Maximum trade volume to copy. Trade signals with a larger volume will be copied with maximum volume instead | |
signalDelay | SignalDelay | Extra trade copying delay introduced by trade copier before applying the trade signal. You can configure either a fixed or a random delay |
Example#
{
"strategyId": "SMKn",
"multiplier": 1,
"skipPendingOrders": true,
"closeOnly": "by-strategy",
"maxTradeRisk": 0.01,
"reverse": true,
"reduceCorrelations": "by-strategy",
"stopOutRisk": {
"absoluteValue": 0.05,
"relativeValue": 0.01,
"startTime": "2020-08-24T00:00:00.000Z"
},
"symbolFilter": {
"included": [
"EURUSD"
]
},
"newsFilter": {
"calendarNewsFilter": {
"priorities": [
"election"
],
"closePositionTimeGapInMinutes": 10,
"openPositionPrecedingTimeGapInMinutes": 20,
"openPositionFollowingTimeGapInMinutes": 20
}
},
"riskLimits": [
{
"type": "day",
"applyTo": "balance-difference",
"maxAbsoluteRisk": 0.05,
"maxRelativeRisk": 0.01,
"closePositions": true,
"startTime": "2020-08-24T00:00:00.000Z"
}
],
"maxStopLoss": {
"value": 100,
"units": "pips"
},
"maxLeverage": 0,
"symbolMapping": [
{
"to": "EURUSD",
"from": "EURUSD.m"
}
],
"tradeSizeScaling": {
"mode": "none"
},
}