以文本方式查看主题

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

--  作者:muxia5568
--  发布时间:2015/3/17 14:18:13
--  跨周期模型
 新手,请老师帮助编写一个跨周期模型,在30分钟周期调用10分钟周期的KD指标;当价格上穿布林线上轨且10分钟KD指标死叉,卖开仓,当价格下穿布林线下轨且10分钟KD指标金叉,平空开多,谢谢老师。
--  作者:jinzhe
--  发布时间:2015/3/17 14:21:12
--  
处理中请稍等
--  作者:pyd
--  发布时间:2015/3/17 14:35:09
--  

m:=26;
n:=2;
MID :  MA(CLOSE,M);
UPPER: MID + N*STD(CLOSE,M);
LOWER: MID - N*STD(CLOSE,M);
k:=stkindi(STKLABEL,\'kdj.k\',0,18);
d:=stkindi(STKLABEL,\'kdj.d\',0,18);
sc:=cross(d,k);
jc:=cross(k,d);
k1:=cross(h,upper);
k2:=cross(lower,l);
if k1 and sc then begin
sell(holding>0,holding,market);
buyshort(holding=0,1,market);
end
if k2 and jc then begin
sellshort(holding<0,holding,market);
buy(holding=0,1,market);
end

--  作者:muxia5568
--  发布时间:2015/3/17 14:54:18
--  
 请老师帮助把模型中的表示10分钟周期的函数标记一下,这个模型的调用周期和使用周期是否可以改变?如果要改的话,调整那个函数?再麻烦老师把小时周期的函数写法,写下来,刚接触,新手,谢谢
--  作者:jinzhe
--  发布时间:2015/3/17 14:57:19
--  
就是上面的stkindi,具体使用方法可以参考函数说明
--  作者:muxia5568
--  发布时间:2015/3/18 8:36:55
--  
 老师编写的模型和我的想法不一致,很多该出信号的地方都没有,请老师加载到焦炭1505合约30分钟周期上看一下,是什么原因?谢谢!
--  作者:pyd
--  发布时间:2015/3/18 9:01:11
--  

k:=stkindi(STKLABEL,\'kdj.k\',0,18);//10分钟周期k,60分钟把18改成5
d:=stkindi(STKLABEL,\'kdj.d\',0,18);//10分钟周期d,60分钟把18改成5

其他周期的改法请看函数说明 period 周期类型

没有出信号就是条件没有达到,是按你一楼的要求写的

金字塔公式系统的编写调试http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=1246

 


--  作者:jinzhe
--  发布时间:2015/3/18 9:02:30
--  
这样写是正确的,如果信号和你想的不一样,请修改自己的想法
--  作者:muxia5568
--  发布时间:2015/3/18 9:28:26
--  
 请老师帮助修改一下模型;2小时周期上使用,当最高价上穿布林线上轨且30分钟KD指标死叉,卖开仓,当最低价下穿布林线下轨且30分钟KD指标金叉,平空开多,开仓后亏N个点止损。谢谢老师。
--  作者:jinzhe
--  发布时间:2015/3/18 9:56:26
--  

前面大体上行差不多,改改引用的参数即可

后面的止损是这样写的:

if holding>0 and enterprice-l>=n*mindiff then sell(1,0,thisclose);

if holding<0 and h-enterprice>=n*mindiff then sellshort(,0,thisclose);