以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  帮我写个语句  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=61284)

--  作者:crystal731
--  发布时间:2014/1/26 8:40:13
--  帮我写个语句
我想做个日内止损的,用日内螺纹的1分钟线,当当日的总盈亏也就是平仓盈亏加持仓盈亏达到500元的时候平仓,然后当日不再开仓,第二日继续从总盈亏为0开始
--  作者:jinzhe
--  发布时间:2014/1/26 10:04:45
--  

variable:n=0;

 

a1:ref(asset,todaybar);

 

if a1-asset>500 or a1-asset<500 then n:=1;

 

if 开仓条件 and n=0 then begin

   下单语句;

end

 

if  time=closetime(0) then n:=0;

 

用全局变量来记录当前的状态,盈亏小于500时n=0,能够开仓,盈亏大于500时n=1,不能下单,

最后每天收盘时重置全局变量


--  作者:jinzhe
--  发布时间:2014/1/26 10:46:47
--  

variable:n=0;

 

a1:ref(asset,todaybar);

 

if asset-a1>500 or asset-a1<-500 then n:=1;

 

if 开仓条件 and n=0 then begin

   下单语句;

end

 

if  time=closetime(0) then n:=0;

 

 

中间有一段写错了,改了下


--  作者:crystal731
--  发布时间:2014/1/26 11:07:52
--  

我改写了以后几乎不开仓了

能不能远程帮我看下我的程序


--  作者:jinzhe
--  发布时间:2014/1/26 11:13:25
--  
用在日线上的?
--  作者:crystal731
--  发布时间:2014/1/26 11:19:25
--  

用着1分钟线上的

 


--  作者:jinzhe
--  发布时间:2014/1/26 11:26:04
--  
把你改写的部分贴上来看看
--  作者:crystal731
--  发布时间:2014/1/26 11:42:57
--  


INPUT:N(1,1,100,1),NMIN(10,1,100,1),SS(1,1,10000,1),x(20,10,100,1),q(10,1,50,1);
VARIABLE:趋买势:=0,k1:=0.7,k2:=0.7,y=:0;

M:=NUMTOSTR(N,0);
p:=NUMTOSTR(q,0);
S:=TODAYBAR;
HH:=HHV(H,S);//当日最高价
LL:=LLV(L,S);//当日最低价
OO:=STKINDI(\'\',\'MAO.MAO1(1)\',0,6,0);//当日开盘价
昨收:=stkindi(\'\',\'MAO.MAO2(1)\',0,6,-1);
昨昨收:=stkindi(\'\',\'MAO.MAO2(1)\',0,6,-2);//昨天的前一天的收盘价,暂称为昨昨收


昨高:=STKINDI(\'\',\'MAO.hh(\'&M&\')\',0,6,-1);
昨低:=STKINDI(\'\',\'MAO.ll(\'&M&\')\',0,6,-1);
高收:=STKINDI(\'\',\'MAO.hc(\'&M&\')\',0,6,-1);
低收:=STKINDI(\'\',\'MAO.lc(\'&M&\')\',0,6,-1);
关键点:=(stkindi(\'\',\'MAO.MAO2(1)\',0,6,-1)-stkindi(\'\',\'MAO.MAO2(1)\',0,6,-q))/(stkindi(\'\',\'MAO.hh(&q&)\',0,6,-1)-stkindi(\'\',\'MAO.ll(&q&)\',0,6,-1))*100;


浮动区间:=MAX(昨高-低收,高收-昨低);//RANGE


if 昨收>昨昨收 then begin
    if 关键点<x then begin
      k1:=0.35;
      k2:=0.7;
    end
    if 关键点>=x then BEGIN
      k1:=0.7;
      k2:=0.35;
    end
end

if 昨收<=昨昨收 then begin
   if 关键点<x then begin
   k1:=0.7;
   k2:=0.35;
   end
   if 关键点>=x then BEGIN
   k1:=0.35;
   k2:=0.7;
   end
end


上轨:OO+K1*浮动区间;
下轨:OO-K2*浮动区间;
T1:=TIME>OPENTIME(1) AND TIME<CLOSETIME(0)-NMIN*100;
T2:=TIME>=CLOSETIME(0)-NMIN*100;
手数:=SS;
a1:=ref(asset,todaybar);
if a1-asset>500 then y:=1;


//交易条件
开多条件:=C>上轨 AND (HOLDING=0 or holding<0) and y=0;
开空条件:=C<下轨 AND (HOLDING=0 or holding>0) and y=0;
平空条件:=C>上轨 AND HOLDING<0;
平多条件:=C<下轨 AND HOLDING>0;
//交易系统
开多:BUY(开多条件 AND T1,手数,MARKET);
开空:BUYSHORT(开空条件 AND T1,手数,MARKET);
平多:sell(平多条件 and t1,手数,market);
平空:sellshort(平空条件 and t1,手数,market);

收盘平多:SELL(T2,手数,MARKET);
收盘平空:SELLSHORT(T2,手数,MARKET);

ak1:k1,LINETHICK0;
ak2:k2,LINETHICK0;

if time>closetime(0)+NMIN*100 then y:=0;

//用全局变量来记录当前的状态,盈亏小于500时y=0,能够开仓,盈亏大于500时y=1,不能下单,
//最后每天收盘时重置全局变量
亏损:a1,LINETHICK0;
总亏损:a1-asset,LINETHICK0;
浮动盈亏:OPENPROFIT,LINETHICK0;
当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;//输出当前资产,但不影响坐标最高最低值


--  作者:jinzhe
--  发布时间:2014/1/26 13:16:44
--  

\'MAO.MAO1(1)\'

这个公式里面的内容贴一下


--  作者:crystal731
--  发布时间:2014/1/26 13:20:20
--  

input:n(5,1,100,1);

MAO1:ma(open,n);
MAO2:ma(close,n);
MAO3:ma(high,n);
MAO4:ma(low,n);

hh:HHV(h,n);
hc:hhv(c,n);
lc:llv(c,n);
ll:llv(l,n);

平均波幅:ma((h-l),n);
开收盘区间:ma(abs(o-c),n);