以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  求修改一下怎么限定每天只开仓一次谢谢  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=152232)

--  作者:WW4739889
--  发布时间:2017/4/27 11:22:08
--  求修改一下怎么限定每天只开仓一次谢谢
麻烦您看一下问题出在哪里可以吗 修改下谢谢


LC := REF(CLOSE,1);
手数:=1;
variable:lossnum=0;// 全局变量,平仓时判断一下是盈利/亏损,若亏损lossnum就加1
cs:=1;//限定一天最多亏损5次

RSI1:SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100;
KAIDUO:RSI1<20 AND HOLDING = 0 AND LOSSNUM = 0;
KAIKONG:RSI1>80 AND HOLDING = 0 AND LOSSNUM = 0;
PING:OPENPROFITPER=0.018 OR OPENPROFITPER = -0.01;
BUY(KAIDUO,1, MARKET)  lossnum:=lossnum+1;;
BUYSHORT(KAIKONG,1, MARKET) THEN lossnum:=lossnum+1;;
SELL(1,手数,MARKET);
SELLSHORT(1,手数,MARKET);
IF TIME>=151000 THEN BEGIN
 收盘平多:SELL(1,手数,MARKET);
 收盘平空:SELLSHORT(1,手数,MARKET);
END

--  作者:wenarm
--  发布时间:2017/4/27 11:33:38
--  

BUY(KAIDUO,1, MARKET)  lossnum:=lossnum+1;
BUYSHORT(KAIKONG,1, MARKET) THEN lossnum:=lossnum+1;

这两句错误。

BUY(KAIDUO,1, MARKET)  lossnum:=lossnum+1;;
改成

if KAIDUO=1 then begin
 BUY(1,1, MARKET);
 lossnum:=lossnum+1;

end

 

buyshort参考上面自行修该,另外你可以在官网下载基础编程教程