以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- [求助]请大师帮我写一个简单的ATR通道代码 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=172952) |
-- 作者:15898620130 -- 发布时间:2019/11/7 20:40:31 -- [求助]请大师帮我写一个简单的ATR通道代码 万分感谢,就是由收盘价和收盘价加N倍的ATR组成的上轨和收盘价减去N倍的ATR组成的下轨,当突破上轨时开仓,回落到均线时平仓,突破下轨时开仓,回落到均线处平仓,万分感谢!!! |
-- 作者:FireScript -- 发布时间:2019/11/8 9:18:01 -- INPUT:M(14,1,100,1),A(5,1,100,1); TR1 := MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW)); ATR := MA(TR1,M); N:=0.01;//变量N MAN:MA(C,A);//均线 UP:C+N*ATR;//上轨 DOWN:C-N*ATR;//下轨 JC:CROSS(C,UP);//上穿上轨 SC:CROSS(DOWN,C);//下破下轨 MA_JC:=CROSS(C,MAN);//上破均线 MA_SC:=CROSS(MAN,C);//下破均线 SELLSHORT(HOLDING<0 AND MA_JC,1,MARKET); BUY(HOLDING=0 AND JC,1,MARKET); SELL(HOLDING>0 AND MA_SC,1,MARKET); BUYSHORT(HOLDING=0 AND SC,1,MARKET); 代码如上。但是我看了下,这个没法有信号。c没法上穿上轨或者下破下轨。因为上下轨是恒比c大或小。
[此贴子已经被作者于2019/11/8 9:19:09编辑过]
|
-- 作者:15898620130 -- 发布时间:2019/11/8 9:28:31 -- 感谢如您,怪我表述不好,老师,嘿嘿,其实就像HCL那样的三条线通道,上轨是比如20日均线加了N倍的ATR下轨也是在20日均线基础上减了N倍的ATR,当收盘价突破上轨或下轨时开仓,回落到均线时平仓,嘿嘿,像您学习,争取早日我也能独立的写出代码, 哈
|
-- 作者:FireScript -- 发布时间:2019/11/8 9:48:46 -- UP:C+N*ATR;//上轨 DOWN:C-N*ATR;//下轨 你意思是这个上下轨应该是用 ma+N*atr 这种方式算的。你均线是多少周期的均线?
|
-- 作者:FireScript -- 发布时间:2019/11/8 9:51:14 -- 这样就可以了: INPUT:M(14,1,100,1),A(5,1,100,1),N(1,1,100,1);
TR1 := MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW)); ATR := MA(TR1,M); MAN:MA(C,A);//A日均线 默认是5日均线,可以调整参数a来调整这个 UP:MAN+N*ATR;//上轨 DOWN:MAN-N*ATR;//下轨 JC:CROSS(C,UP);//上穿上轨 SC:CROSS(DOWN,C);//下破下轨 MA_JC:=CROSS(C,MAN);//上破均线 MA_SC:=CROSS(MAN,C);//下破均线 SELLSHORT(HOLDING<0 AND MA_JC,1,MARKET);//平空 BUY(HOLDING=0 AND JC,1,MARKET);//开多 SELL(HOLDING>0 AND MA_SC,1,MARKET);//平多 BUYSHORT(HOLDING=0 AND SC,1,MARKET);//开空 |
-- 作者:15898620130 -- 发布时间:2019/11/8 11:09:42 -- 多谢大师~~~~~哈啊哈,终于能回测到实打实的数据啦,嘿嘿 |