Strategies
期货一键对冲插件Hedge-on-two-contracts
小草 · javascript · Portfolio and Arbitrage · 2020-03-24 10:52:08
Context terms
No English write-up in the source (no author description).
Parameters
| Parameters | Default | Description |
|---|---|---|
| Contract_A | this_week | 交易合约A |
| Contract_B | quarter | 交易合约B |
| Amount | 10 | 开仓数量 |
| Slip | 2 | 滑价 |
| Reverse | false | 反向交易 |
Source code (22 lines)
function main(){
exchange.SetContractType(Reverse ? Contract_B : Contract_A)
var ticker_A = exchange.GetTicker()
if(!ticker_A){return 'Unable to get quotes'}
exchange.SetDirection('buy')
var id_A = exchange.Buy(ticker_A.Sell+Slip, Amount)
exchange.SetContractType(Reverse ? Contract_B : Contract_A)
var ticker_B = exchange.GetTicker()
if(!ticker_B){return 'Unable to get quotes'}
exchange.SetDirection('sell')
var id_B = exchange.Sell(ticker_B.Buy-Slip, Amount)
if(id_A){
exchange.SetContractType(Reverse ? Contract_B : Contract_A)
exchange.CancelOrder(id_A)
}
if(id_B){
exchange.SetContractType(Reverse ? Contract_B : Contract_A)
exchange.CancelOrder(id_B)
}
return 'Position: ' + JSON.stringify(exchange.GetPosition())
}