作为一名成长中的韭菜,我对平台期货交易中选择方向和交易买卖指令结合在一起的情况十分困惑
“首先选择交易方向 exchange.SetDirection(buy/sell/closebuy/closesell),交易方向一共有四种” “然后,调用exchange.Buy/Sell()函数进行下单交易”
一度纠结于如下的几种组合情况: “buy 方向下的 buy和sell sell 方向下的 buy和sell closebuy 方向下的 buy和sell closesell 方向下的 buy和sell”,分别如何理解,经过用更傻的方法进行手动测试, 我得出了如下结论 “//结论1:无论当前方向是 buy 还是sell ,开多仓是buy,开空仓是sell” “//结论2:无论方向是closebuy还是closesell,平多都是sell,平空都是buy”
供更小的韭菜参考。测试的傻代码如下:
/*backtest start: 2018-12-01 00:00:00 end: 2018-12-31 00:00:00 period: 1h exchanges: [{“eid”:“Futures_OKCoin”,“currency”:“BTC_USD”}] */
function main() { exchange.SetContractType(“quarter”) exchange.SetMarginLevel(10) exchange.SetDirection(“sell”) var buy1 =exchange.GetTicker() Log(buy1.Sell) exchange.Sell(3500,500) Log(exchange.GetAccount()); Log(exchange.GetPosition()); exchange.SetDirection(“closebuy”) exchange.Buy(4000,500) Log(exchange.GetAccount()); Log(exchange.GetPosition());
}
//buy sell // [{“Price”:3934.21,“Amount”:500,“FrozenAmount”:0,“Profit”:-0.00003230381575061599,“Margin”:1.27090318,“MarginLevel”:10,“Type”:1,“ContractType”:“quarter”}] // {“Balance”:0,“FrozenBalance”:0,“Stocks”:98.72528411046,“FrozenStocks”:0}
//buy buy // [{“Price”:3934.23,“Amount”:500,“FrozenAmount”:0,“Profit”:-0.00003230365153283115,“Margin”:1.27089671,“MarginLevel”:10,“Type”:0,“ContractType”:“quarter”}] // {“Balance”:0,“FrozenBalance”:0,“Stocks”:98.725290599843,“FrozenStocks”:0}
//sell sell //[{“Price”:3934.21,“Amount”:500,“FrozenAmount”:0,“Profit”:-0.00003230381575061599,“Margin”:1.27090318,“MarginLevel”:10,“Type”:1,“ContractType”:“quarter”}] //{“Balance”:0,“FrozenBalance”:0,“Stocks”:98.72528411046,“FrozenStocks”:0}
//sell buy //[{“Price”:3934.23,“Amount”:500,“FrozenAmount”:0,“Profit”:-0.00003230365153283115,“Margin”:1.27089671,“MarginLevel”:10,“Type”:0,“ContractType”:“quarter”}] //{“Balance”:0,“FrozenBalance”:0,“Stocks”:98.725290599843,“FrozenStocks”:0}
//————————————————————————— //buy buy //[{“Price”:3934.23,“Amount”:500,“FrozenAmount”:0,“Profit”:-0.00003230365153283115,“Margin”:1.27089671,“MarginLevel”:10,“Type”:0,“ContractType”:“quarter”}] // {“Balance”:0,“FrozenBalance”:0,“Stocks”:1.725290599843,“FrozenStocks”:0} //sell buy //[{“Price”:3934.23,“Amount”:500,“FrozenAmount”:0,“Profit”:-0.00003230365153283115,“Margin”:1.27089671,“MarginLevel”:10,“Type”:0,“ContractType”:“quarter”}] //{“Balance”:0,“FrozenBalance”:0,“Stocks”:1.725290599843,“FrozenStocks”:0}
//buy sell //[{“Price”:3934.21,“Amount”:500,“FrozenAmount”:0,“Profit”:-0.00003230381575061599,“Margin”:1.27090318,“MarginLevel”:10,“Type”:1,“ContractType”:“quarter”}] // {“Balance”:0,“FrozenBalance”:0,“Stocks”:1.72528411046,“FrozenStocks”:0} //sell sell //[{“Price”:3934.21,“Amount”:500,“FrozenAmount”:0,“Profit”:-0.00003230381575061599,“Margin”:1.27090318,“MarginLevel”:10,“Type”:1,“ContractType”:“quarter”}] // {“Balance”:0,“FrozenBalance”:0,“Stocks”:1.72528411046,“FrozenStocks”:0} //结论:无论当前方向是 buy 还是sell ,开多仓是buy,开空仓是sell
//当前持多仓 //——————————————– //closebuy buy //invalid position //closebuy sell //[] //{“Balance”:0,“FrozenBalance”:0,“Stocks”:2.992310000303,“FrozenStocks”:0}
//closesell buy //invalid position //closesell sell //[] //{“Balance”:0,“FrozenBalance”:0,“Stocks”:2.992310000303,“FrozenStocks”:0} //——————————————– //结论:无论方向是closebuy还是closesell,平多都是sell
//当前持空仓 //——————————————– //closesell sell //invalid position //closesell buy //[] //{“Balance”:0,“FrozenBalance”:0,“Stocks”:2.992310000303,“FrozenStocks”:0}
//closebuy sell //invalid position //closebuy buy //[] //{“Balance”:0,“FrozenBalance”:0,“Stocks”:2.992310000303,“FrozenStocks”:0} //结论:无论方向是closebuy还是closesell,平多都是buy