If(Open>DKX And Open>may){
If(longCurrentContracts==0){
Buy(1,Open);
}Else{
If(Open<LastEntryPrice){
Buy(longCurrentContracts+1,Open);
}
}
}
加仓时是在原仓位的基础上加1手,应该是 1,2,3,4,5,6 等,结果程序跑出来的结果是 1,2,4,8,16,32,64等,为什么翻倍加仓,代码中只是加1,怎么才能更正过来,谢谢
持仓是在累计,但当前的持仓是最后的累计值,只是在最后累计值上加1,而不是所有交易次的持仓,每个都累加吧?
第1次,1手
第2次,累计持仓为1,加1,=2
第3次,累计持仓为2,加1,=3
而程序计算结果是 (1 + 2 ) +1 = 4,相当于把前两次的持仓都累加起来,再加1了
Buy(longCurrentContracts+1,Open);
你再想想
你的持仓在累计
怎么可能是123456
截图
代码就这些吗?