以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 如何编写加仓 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=77853) |
-- 作者:豆芽 -- 发布时间:2015/4/22 8:50:11 -- 如何编写加仓 INPUT:N(1,1,100,1),K1(0.7,0.1,1,0.1),K2(0.7,0.1,1,0.1) CYC:=BARSLAST(DATE<>REF(DATE,1))+1; 昨高:=CALLSTOCK(STKLABEL,VTHIGH,6,-1); 昨低:=CALLSTOCK(STKLABEL,VTLOW,6,-1); 昨收:=CALLSTOCK(STKLABEL,VTCLOSE,6,-1); 开盘价:=VALUEWHEN(CYC=1,OPEN); HH:=HHV(昨高,N);//N日HIGH的最高价 HC:=HHV(昨收,N);//N日CLOSE的最高价 LC:=LLV(昨收,N);//N日CLOSE的最低价 LL:=LLV(昨低,N);//N日LOW的最低价 浮动区间:=MAX(HH-LL,HC-LL);//RANGE 上轨:开盘价+K1*浮动区间; 下轨:开盘价-K2*浮动区间; IF LOW<=下轨 THEN BEGIN SELL(HOLDING>0 AND ENTERBARS>0,0,market); BUYSHORT(HOLDING=0,1,market); END IF HIGH>=上轨 THEN BEGIN SELLSHORT(HOLDING<0 AND ENTERBARS>0,0,market); BUY(HOLDING=0,1,market); END 如何编写在已有开多或开空的情况下,每突破上轨或下轨都加一次仓(单个交易日只加一次),单边加三次为限。
|
-- 作者:jinzhe -- 发布时间:2015/4/22 9:06:04 -- INPUT:N(1,1,100,1),K1(0.7,0.1,1,0.1),K2(0.7,0.1,1,0.1);
variable:n=0,m=0;
CYC:=BARSLAST(DATE<>REF(DATE,1))+1;
昨高:=CALLSTOCK(STKLABEL,VTHIGH,6,-1);
昨低:=CALLSTOCK(STKLABEL,VTLOW,6,-1);
昨收:=CALLSTOCK(STKLABEL,VTCLOSE,6,-1);
开盘价:=VALUEWHEN(CYC=1,OPEN);
HH:=HHV(昨高,N);//N日HIGH的最高价
HC:=HHV(昨收,N);//N日CLOSE的最高价
LC:=LLV(昨收,N);//N日CLOSE的最低价
LL:=LLV(昨低,N);//N日LOW的最低价
浮动区间:=MAX(HH-LL,HC-LL);//RANGE
上轨:开盘价+K1*浮动区间;
下轨:开盘价-K2*浮动区间;
IF LOW<=下轨 THEN BEGIN
SELL(HOLDING>0 AND ENTERBARS>0,0,market);
if holding=0 then begin
BUYSHORT(HOLDING=0,1,market);
n:=0;
m:=0;
end
END
IF HIGH>=上轨 THEN BEGIN
SELLSHORT(HOLDING<0 AND ENTERBARS>0,0,market);
if holding=0 then begin
BUY(HOLDING=0,1,market);
n:=0;
m;=0;
end
END
if l<=下轨 and holding<0 and n=0 and m<3 then begin buyshort(1,1,market); n:=1; m:=m+1; end if h>=上轨 and holding>0 and n=0 and m<3 then begin
buy(1,1,market);
n:=1;
m:=m+1;
end
if time=closetime(0) then n:=0;
|
-- 作者:豆芽 -- 发布时间:2015/4/22 10:08:32 -- 为什么反手的会多开一手? |
-- 作者:jinzhe -- 发布时间:2015/4/22 10:10:59 -- 多开一手指的是什么? |
-- 作者:豆芽 -- 发布时间:2015/4/22 10:18:08 -- 比如平多开空时,平多单正常(全平),反手开空单时(初次空单次只开一手,但实际会多开一手)。 |
-- 作者:jinzhe -- 发布时间:2015/4/22 10:25:39 -- if l<=下轨 and holding<0 and n=0 and m<3 and enterbars>0 then begin buyshort(1,1,market); n:=1; m:=m+1; end if h>=上轨 and holding>0 and n=0 and m<3 and enterbars>0 then begin
buy(1,1,market);
n:=1;
m:=m+1;
end
从逻辑上来讲同根k线加仓是满足你上面的条件对吧?
那么不想要同根k线开仓就加条件:enterbars>0
|
-- 作者:豆芽 -- 发布时间:2015/4/23 9:41:19 -- 加仓部分没有问题,而是出在反手的时候,比如平多翻空,平多正常,开空单的时候设定开一手,但图形显示会开二手 |
-- 作者:jinzhe -- 发布时间:2015/4/23 9:45:43 -- 请发一个能说明上述现象的截图 |
-- 作者:豆芽 -- 发布时间:2015/4/23 10:10:26 -- 如何截图? |
-- 作者:jinzhe -- 发布时间:2015/4/23 10:14:40 -- 截图可以使用QQ软件进行截图 论坛的发图方式按照下面的方式发图: http://www.weistock.com/bbs/dispbbs.asp?boardid=2&Id=31614&page=3
|