前面省略
{平多}
sell(holding>0 and close>=1MUDUO,INTPART(holding*0.30),thisclose);
sell(holding>0 and sp3,INTPART(holding*0.50),thisclose);//测试时,需要跳变
tsell(tholding>0 and close>=1MUDUO,INTPART(tholding*0.30),mkt);
tsell(tholding>0 and sp3,INTPART(tholding*0.50),mkt);
我在模拟测试时,能显示开多和平多的信号,在在模拟交易时,不能止损止赢,哪里出问题了?
请注意先平仓后开仓的语句次序
//平空
SELLSHORT(BP,N1);
//开多
BUY(BK,N1);
//平多
SELL(SP,N1);
//开空
BUYSHORT(SK,N1);
就是说要按照你这个顺序才对吗?程序的取数是按照实际开仓的,还是计算机计算 的这个开仓数量?比如,我设定符合条件后开仓10手,实际出现提示信号后,我只开仓5手。这样计算机取数holding是10还是5??我好像测试一下后,是10,不会出现5的。
这样的意思是不是就是先执行平空,再开多平多开空。如果没有空单呢?会直接执行开多吗??
先平仓后开仓
如果没有空单,会直接执行开多
而先开多仓后平空仓
则可能开不了多仓,只执行了平空仓