我以KDJ指标为例说一下我的策略,请帮忙编写一下,我实在编写不出了。
1.当K向上突破80,卖平开
2.当卖平开,仓后画一条止损线:5日最高价,以此价固定不变直到下一个条件信号出现
3.当收盘价突破止损线,反手平仓开多,在此之后出现的K突破80,都视为无效,而是用收盘价跌破5日均线平多作为条件。
1.当K向下跌破20,买平开
2.当买平开,仓后画一条止损线:5日最低价,以此价固定不变直到下一个条件信号出现
3.当收盘价跌破止损线,反手平仓开空,在此之后出现的K跌破20,都视为无效,而是用收盘价突破5日均线平空作为条件。
麻烦哪位大侠编写一下
问题正在解决中
公式完成,但在理解描述要求时,有写迷惑,特别是这两个—— 平空作为条件,平多作为条件
逻辑大体符合,不足处请再发贴或自己修改。
k:"kdj.k";
mah:=hhv(h,5);
mal:=llv(l,5);
variable:止损线=DRAWNULL;
kk:=0;
if k>80 and kk=0 then
begin
sell(holding>0,holding,market);
buyshort(holding=0,1,market);
止损线:=mah;
kk:=1;
end
if c>止损线 then
begin
sellshort(holding<0,holding,market);
buy(holding=0,1,market);
end
if c<ma(c,5) and kk=1 then
begin
sell(holding>0,holding,market);
buyshort(holding=0,1,market);
止损线:=mah;
end
//
kp:=0;
if k<20 and kp=0 then
begin
sellshort(holding<0,holding,market);
buy(holding=0,1,market);
止损线:=mal;
kp:=1;
end
if c<止损线 then
begin
sell(holding>0,holding,market);
buyshort(holding=0,1,market);
end
if c>ma(c,5) and kp=1 then
begin
sellshort(holding<0,holding,market);
buy(holding=0,1,market);
止损线:=mal;
end