以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  [求助]信号飘移的问题怎么解决?  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=154080)

--  作者:并不陌生
--  发布时间:2017/5/24 20:55:51
--  [求助]信号飘移的问题怎么解决?
老师好,我编写了一个指标,周期为分钟,里面韩有调用大周期30分钟数据。当屏幕上显示的K线数目不同时,开多,开空会出现的不同的K线上。只有显示足够多时,最近的信号才会稳定不变。
我理解是这样的:每次从第一根K计算,因为第一根的数据不同,所以影响了后面的结果,K线足够多时,这种影响被中间某些K线组合截断了。不知道理解的对不对,应该如何避免这种影响?

--  作者:王锋
--  发布时间:2017/5/24 21:37:33
--  
http://vip.weistock.com:8081/forum.php?mod=viewthread&tid=2713&extra=page%3D1
--  作者:并不陌生
--  发布时间:2017/5/24 23:53:25
--  
谢谢老师。
我的不是引用大周期数据的问题。我去掉了还是老样子的。我的不是闪烁,是固定的改变开平仓位置。
当屏幕显示1600跟K线时显示一种位置。
当屏幕显示2500跟K线时就是另外一种位置,这时的信号的位置才是我程序想实现的位置。
这时候如果再把屏幕K线数无论如何变小,譬如改为1500根,500根,100根,信号位置都是正确的。
我想这个问题别人与会遇到的,感觉就是起始K的数值有关。应该如何解决这个问题?

逐K线模式
部分代码如下:

VARIABLE:m多方极价=C,m空方极价=C;{声明设置C,开平仓发生时置C}
...
开多条件:CROSS(MA(C,5),MA(C,10));
IF (开多条件)then
begin
m多方极价:=C;
m空方极价:=C;
end;


--  作者:shq
--  发布时间:2017/5/25 9:52:25
--  
从开多语句我们可以看出,这里使用了MA函数,不同K线数量对信号产生位置必然产生影响,这点请理解透,不细说。

从使用很大的数据长度来看,使用数据越多,两个不同数量K线产生的信号位置偏差越来越小。

针对3楼所述,扩大到2500根后缩小屏幕显示K线数量,不代表运算时就按照这1500根、500根、100根,还是前面的2500根。K线主图的横坐标处有个可移动的拖拉条,这里可以向前移动,以看到未显示出但却参与运算的K线。

--  作者:并不陌生
--  发布时间:2017/5/25 11:10:34
--  
谢谢老师