以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (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=182451)

--  作者:jzt666
--  发布时间:2020/10/9 6:17:18
--  判断语句编写
如果昨日是多头止盈平仓,那么最低价小于唐奇安下轨继续开多;如果昨日是空头止盈平仓,那么最高价大于唐奇安上轨继续开空;
--  作者:FireScript
--  发布时间:2020/10/9 9:07:13
--  
 这个需要在用全局变量记录下昨日平仓用的是止盈还是止损的。


VARIABLE:mark:=0;//全局变量在每次平仓时候记录下。
ma5:ma(c,5);
ma10:ma(c,10);
majc:cross(ma5,ma10);
masc:cross(ma10,ma5);

INPUT:X(20,1,100,1),nmin(10,1,100,1),ss(1,1,100,1);//唐奇安通道
X周期高点:=ref(hhv(h,X),1);//X是参数,自行调整
X周期低点:=ref(LLV(L,X),1);

if majc and holding=0 then buy(1,1,market);
if masc and holding>0 then
begin
sell(1,holding,market);
mark:=0;//非止盈平仓这里赋值为0 ,加以区分   
end

if c-ENTERPRICE>=10*MINDIFF and holding>0 then //if后面的条件必须是完整的平仓条件判断,否则可能出现mark全局变量被提前重置的情况
begin
sell(1,holding,market);
mark:=1;//如果是空头这里赋值为-1 ,加以区分   
end

if l<X周期低点 and ref(mark,TODAYBAR)=1 then buy(holding=0,1,market);//最低价小于唐奇安通道下轨 且上个交易日是

就参考下这里全局变量的使用方式吧。参照这个思路自行根据你自己代码上下文编写下即可。