Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共12 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:求助,T+0修改成T+1

1楼
唐方一战 发表于:2016/4/8 7:56:31
下面是一个dt程序,目前是T+0,需要修改成T+1:
开仓原则是:碰到上轨就以上轨的价格开多单。
平仓原则是:T+1日后,碰到下轨就以下轨的价格平仓。
这个原来是做期货,我想用来做股票,只能T+1,请金字塔的老师帮助一下,谢谢!



INPUT:M1(0.5,0.1,0.5,0.01),M2(0.5,0.1,0.5,0.01),ss(0,0,100000000,1);//参数值


昨高:=CALLSTOCK(STKLABEL,VTHIGH,6,-1);//昨高
昨低:=CALLSTOCK(STKLABEL,VTLOW,6,-1);//昨低
昨收:=CALLSTOCK(STKLABEL,VTCLOSE,6,-1);//昨收
今日开盘价:=Valuewhen(date<>ref(date,1),open);

S1:=max(昨收-昨低,昨高-昨收);//中间变量
S:=max(昨收*0.008,S1);//中间变量

上轨:今日开盘价+M1*S;//求上轨
下轨:今日开盘价-M2*S;//求下轨



手数:=SS;
        

//条件
开仓条件:=high>=上轨 ;//开多条件
平仓条件:=low<=下轨 ;//平仓条件  

//交易系统
IF TIME>090000  AND HOLDING = 0 THEN BEGIN 
开多:=BUY(开仓条件 ,手数,LIMITR,上轨);
开仓日期:=date;
 END
IF    HOLDING > 0   THEN BEGIN    
平仓:=sell(平仓条件 ,手数,LIMITR,下轨);
 
END
2楼
jinzhe 发表于:2016/4/8 8:57:10
INPUT:M1(0.5,0.1,0.5,0.01),M2(0.5,0.1,0.5,0.01),ss(0,0,100000000,1);//参数值


昨高:=CALLSTOCK(STKLABEL,VTHIGH,6,-1);//昨高
昨低:=CALLSTOCK(STKLABEL,VTLOW,6,-1);//昨低
昨收:=CALLSTOCK(STKLABEL,VTCLOSE,6,-1);//昨收
今日开盘价:=Valuewhen(date<>ref(date,1),open);

S1:=max(昨收-昨低,昨高-昨收);//中间变量
S:=max(昨收*0.008,S1);//中间变量

上轨:今日开盘价+M1*S;//求上轨
下轨:今日开盘价-M2*S;//求下轨



手数:=SS;
        

//条件
开仓条件:=high>=上轨 ;//开多条件
平仓条件:=low<=下轨 ;//平仓条件  

//交易系统
IF TIME>090000  AND HOLDING = 0 THEN BEGIN 
开多:=BUY(开仓条件 ,手数,LIMITR,上轨);
开仓日期:=date;
 END
IF    ref(HOLDING,todaybar) > 0   THEN BEGIN    
平仓:=sell(平仓条件 ,ref(holding,todaybar),LIMITR,下轨);
 
END

3楼
admin 发表于:2016/4/8 9:06:29

股票与股指T+1交易代码实现范例

http://www.weistock.com/bbs/dispbbs.asp?BoardID=2&ID=94424&replyID=&skin=1

 

这里有更简单的T+1代码规则

4楼
唐方一战 发表于:2016/4/8 10:29:09
图片点击可在新窗口打开查看我加载后这个程序运行不了,无法通过编译,咋办?
5楼
唐方一战 发表于:2016/4/8 10:30:13
REF 函数在逐K线模式下不能直接在IF控制语句之内引用
6楼
jinzhe 发表于:2016/4/8 10:44:16

INPUT:M1(0.5,0.1,0.5,0.01),M2(0.5,0.1,0.5,0.01),ss(0,0,100000000,1);//参数值

 


昨高:=CALLSTOCK(STKLABEL,VTHIGH,6,-1);//昨高
昨低:=CALLSTOCK(STKLABEL,VTLOW,6,-1);//昨低
昨收:=CALLSTOCK(STKLABEL,VTCLOSE,6,-1);//昨收
今日开盘价:=Valuewhen(date<>ref(date,1),open);


S1:=max(昨收-昨低,昨高-昨收);//中间变量
S:=max(昨收*0.008,S1);//中间变量


上轨:今日开盘价+M1*S;//求上轨
下轨:今日开盘价-M2*S;//求下轨

 

 


手数:=SS;    
       


//条件
开仓条件:=high>=上轨 ;//开多条件
平仓条件:=low<=下轨 ;//平仓条件 


//交易系统
IF TIME>090000  AND HOLDING = 0 THEN BEGIN
开多:=BUY(开仓条件 ,手数,LIMITR,上轨);
开仓日期:=date;
 END
 rr:=ref(holding,todaybar);
IF    ref(HOLDING,todaybar) > 0   THEN BEGIN   
平仓:=sell(平仓条件 ,rr,LIMITR,下轨);
 
END

 

 

已修改

7楼
唐方一战 发表于:2016/4/8 10:52:40
非常感谢你们的劳动,谢谢!

我刚刚加载了,发现多了很多白色箭头,不是开平仓信号,怎么去掉这些动东东?
8楼
jinzhe 发表于:2016/4/8 10:59:00
工具 选项  视图,这个不要勾
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
9楼
唐方一战 发表于:2016/4/8 11:13:01
已经解决了,你们的服务很好,再次感谢!

最后再问一个问题,这个程序我加载399006与399905上面有信号,但加载在399005上就没有信号,其他上证指数000001加了也没有,这是什么原因?
10楼
jinzhe 发表于:2016/4/8 11:19:29
你补充下日线数据试试
共12 条记录, 每页显示 10 条, 页签: [1] [2]


Powered By Dvbbs Version 8.3.0
Processed in 0.05469 s, 3 queries.