自己的策略请编写
上轨:10点前最高
下轨:10点前最低
如果(今10点前最高-今开盘)大于(今开盘-今10点前最低),多头强势;
如果(今10点前最高-今开盘)小于(今开盘-今10点前最低),空头强势;
今开盘价格带上轨:今开盘+今开盘*0.005
今开盘价格带下轨:今开盘-今开盘*0.005
多头止损1:min(今开盘价格带下轨,min((今开盘价格带下轨+10点前最低)/2, 10点前最低);
多头止损2:max(今开盘价格带下轨,max((今开盘价格带下轨+10点前最低)/2, 10点前最低);
空头止损1:min(今开盘价格带上轨,min((今开盘价格带上轨+10点前最高)/2, 10点前最高);
空头止损2:max(今开盘价格带上轨,max((今开盘价格带上轨+10点前最高)/2, 10点前最高);
10点后判断今天多空强势方,并在10点后开仓(下午两点半后不开仓),
如果多头强势,
空仓情况下:
1, 当Ref(c,1)<=今开盘价格带上轨,开多,
2, 如条件1不成立,则以最高价突破10点前最高,开多(如两个条件都满足,可以忽略任意后一次的开仓)。
多头止损:
1, 如果多头开仓以ref(c,1)<=开盘价价格带条件开仓,则以最低价小于多头止损1,平多仓。
2, 如果多头开仓以最高价穿越10点前最高价条件开仓,则以最低价小于多头止损2,平多仓。
多头止盈:
以Ref(c,1)<=今开盘价格带上轨开多条件的追踪止盈:
追踪止盈1,当开仓后最高价>=今开盘+开盘价格价格带*0.012,并当价格再次回落到开盘价格带条件*0.01的位置止盈。
追踪止盈2, 当开仓后最高价>=今开盘+开盘价格价格带*0.015,直接平多仓。
以最高价突破10点最高的追踪止盈:
追踪止盈1,当开仓后最高价>=(max(今最高-今开盘),(今开盘-今最低))最大值的1.2倍时,并且价格再次回落到1倍时,多头止盈
追踪止盈2, 当开仓后最高价突破最高价>= max(今最高-今开盘),(今开盘-今最低))1.5倍时直接平多仓。
当出现反转的时候:
当持有多头的情况时,最低价格直接下穿多头止损2,先平多,再反手做空,并且以空头强势来判断接下来的止损止盈
如果空头强势,
空仓情况下:
1, 当Ref(c,1)>=今开盘价格带下轨,开空
2, 如条件1不成立,则以最低价下破10点前最低,开空(如两个条件都满足,可以忽略任意后一次的开仓)。
空头止损:
1, 如果空头开仓以ref(c,1)>=开盘价价格带条件开仓,则以最高价大于空头止损2,平空仓。
2, 如果空头开仓以最低价下穿10点前最低价价条件开仓,则以最高价大于空头止损1,平空仓。
空头止盈:
以Ref(c,1)>=今开盘价格带下轨开空条件的追踪止盈:
追踪止盈1,当开仓后最低价<=今开盘-开盘价格带*0.012,并且当价格再次回升到开盘价格带条件*0.01的位置止盈。
追踪止盈2, 当开仓后最低价<=今开盘-开盘价格带*0.015,直接平多仓。
以最低价价下破10点最低的追踪止盈:
追踪止盈1,当开仓后最低价<=(max(今最高-今开盘),(今开盘-今最低))最大值的1.2倍时,并且价格再次回升到1倍时,空头止盈
追踪止盈2, 当开仓后最低价<=max(今最高-今开盘),(今开盘-今最低))1.5倍时直接平空仓。
当出现反转的时候:
当持有空头的情况时,最高价格直接上穿空头止损1,先平空,再反手做多,并且以多头强势来判断接下来的止损止盈;
定时出场:
14:50平掉所有头寸,不在开仓。
写了个多头的,希望其他人来看一下,觉得写的不对劲。。。。。。
variable:aa=0,bb=0;
nn:=barslast(date<>ref(date,1));
tradetime:= time>100000 and time<=143000;
sg:=valuewhen(time<=100000,hhv(h,nn+1));
xg:=valuewhen(time<=100000,llv(l,nn+1));
jk:=ref(o,nn);
jg:=hhv(h,nn+1);
jd:=llv(l,nn+1);
多头强势: = (sg-jk)>(jk-xg) and time>100000;
空头强势: = (sg-jk)<(jk-xg) and time>100000;
今开盘价格带上轨:=jk*1.005;
今开盘价格带下轨:=jk*0.995;
多头止损1:=min(今开盘价格带下轨,min((今开盘价格带下轨+xg)/2, xg));
多头止损2:=max(今开盘价格带下轨,max((今开盘价格带下轨+xg)/2,xg));
空头止损1:=min(今开盘价格带上轨,min((今开盘价格带上轨+sg)/2,sg));
空头止损2:=max(今开盘价格带上轨,max((今开盘价格带上轨+sg)/2,sg));
h1:=hhv(h,enterbars);
if 多头强势 and tradetime then begin
if ref(c,1)<= 今开盘价格带上轨 then begin buy(holding=0,1,thisclose);aa:=aa+1;end
if c>sg then begin buy(holding=0,1,thisclose);bb:=bb+1;end
if ref(c,1)<= 今开盘价格带上轨 and c>sg then buy(holding=0,1,thisclose)
end
if aa>0 and l<多头止损1 and tradetime then sell(holding>0,0,thisclose);
if bb>0 and l<多头止损2 and tradetime then sell(holding>0,0,thisclose);
if aa>0 and h1>=(jk+ 今开盘价格带上轨*0.012) and tradetime and c<=(jk+今开盘价格带上轨*0.01) then sell(holding>0,0,thisclose);
if aa>0 and h1>=(jk+ 今开盘价格带上轨*0.015) and tradetime then sell(holding>0,0,thisclose);
if bb>0 and h1>=(max((jg-jk),(jk-jd)))*1.2 and c<=max((jg-jk),(jk-jd)) then sell(holding>0,0,thisclose);
if bb>0 and h1>=(max((jg-jk),(jk-jd)))*1.5 then sell(holding>0,0,thisclose);
if l<多头止损2 then begin
sell(holding>0,0,thisclose);
buyshort(holding=0,1,thisclose);
end
if time>=145000 then sell(holding>0,0,thisclose);
if time>=150000 then begin aa:=0;bb:=0;end
追踪止盈1,当开仓后最高价>=(max(今最高-今开盘),(今开盘-今最低))最大值的1.2倍时,并且价格再次回落到1倍时,多头止盈
追踪止盈2, 当开仓后最高价突破最高价>= max(今最高-今开盘),(今开盘-今最低))1.5倍时直接平多仓。
这2句 什么意思,估计没人看得懂
当开仓后的市场最高价(h)大于 max(今10点前最高-今开盘,或今开盘-今10点前最低)之间的最大差的1.2倍时,这个时候我们做个价位记录为第一目标位已经达到(行情接下来还有上冲的可能,所以我们不立即止盈),继续等待价格(h)向上冲到 max(今10点前最高-今开盘,或今开盘-今10点前最低)之间的最大差的1.5倍时,我们进行止盈(止盈2)。
如果价格(h)冲过1.2倍差后没有什么动力,并且ref(c,1)回到了1倍价格差的时候,我们认为行情没有再上冲的动力,这个时候止盈(止盈1)。