以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://www.weistock.com/bbs/list.asp?boardid=4)
----  自己编的简单程序,测试无成交,各位帮我看下  (http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=156132)

--  作者:zjf7976
--  发布时间:2017/7/21 10:35:42
--  自己编的简单程序,测试无成交,各位帮我看下
我自己学着编写了个简单程序,编译通过,历史数据测试,无成交。各位大大帮我看下.
 编程目的:5日均线>10日均线,K线现价大于10日线,开仓买入一手。成交价为10日均线。
                以10日均线为止损,盘中触发,平仓,成交价为10日均线。

          本来还想写个双向的:5日均线<10日均线,K线现价小于10日线,开仓卖出一手。成交价为10日均线。
                以10日均线为止损,盘中触发,也成交,成交价为10日均线。


我写了个上面开多的:
MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
BUY(C>MA10&&MA5>MA10&&holding<1,1,MA10);
sell(C<MA10,1,MA10);


各位帮我看看。

--  作者:FireScript
--  发布时间:2017/7/21 10:49:26
--  

语句写错了。

MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
BUY(C>MA10&&MA5>MA10&&holding<1,1,limit,MA10);
sell(C<MA10,1,limit,MA10);

 

 

还有就是图表下务必遵循一个原则,先平后开。图表下不能锁仓的。

测试的时候注意把开平仓条件也单独输出下,能很明确的看到自己设置的条件是否成立过。

[此贴子已经被作者于2017/7/21 10:53:10编辑过]

--  作者:zjf7976
--  发布时间:2017/7/21 11:26:20
--  
不好意思,我改了下,测试以后还是不对呀。
成交价格是对的,都是MA10.
但是开仓时间不对呀,我不知道怎么把截图发来。
但是,明显的MA5>MA10,K>MA10,没有开仓。到涨到末期了,才开仓。
能我看下吗


--  作者:FireScript
--  发布时间:2017/7/21 11:31:11
--  
以下是引用zjf7976在2017/7/21 11:26:20的发言:
不好意思,我改了下,测试以后还是不对呀。
成交价格是对的,都是MA10.
但是开仓时间不对呀,我不知道怎么把截图发来。
但是,明显的MA5>MA10,K>MA10,没有开仓。到涨到末期了,才开仓。
能我看下吗

回测的时候limit是次周期入场的。就是信号在本周期,但是其实是次周期入场的。不是立即入场。


--  作者:zjf7976
--  发布时间:2017/7/21 11:40:50
--  
次周期也不对,发出信号了,能隔5天,多的10天,才开仓
--  作者:zjf7976
--  发布时间:2017/7/21 11:41:08
--  
平仓也一样
--  作者:zjf7976
--  发布时间:2017/7/21 11:44:57
--  
我是想实现:
          MA5>MA10同时日线(现价)大于MA10日,就开仓1手(价位MA10),
          日线(现价)小于MA10,止损(价位MA10)。
          止损后,发现:MA5>MA10同时日线(现价)又大于MA10日,再次开仓1手(价位MA10)

--  作者:wenarm
--  发布时间:2017/7/21 12:13:22
--  

MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
BUY(C>MA10&&MA5>MA10&&holding<1,1,limit,MA10);
sell(C<MA10,1,limit,MA10);

 

你用的仓位限制条件,建议你改正holding=0;

不管是holding<1还是上面的holding=0;

只会开多一次,后面就不会在开了,除非仓位被平了。

[此贴子已经被作者于2017/7/21 12:13:43编辑过]

--  作者:zjf7976
--  发布时间:2017/7/21 13:40:46
--  
开仓都是一样的,改为holding=0,和holding<1一样,都是一手。
但是开仓点偏差太大,发出信号了,能隔5天,多的10天,才开仓。
谁能教我,怎么上传截图


--  作者:yukizzc
--  发布时间:2017/7/21 13:46:43
--  

MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
BUY(C>MA10&&MA5>MA10&&holding<1,1,limitr,MA10);
sell(C<MA10,1,limitr,MA10);

 

全部改成limitr