金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 1485|回复: 0

使用金字塔对比信号不一致的情况分析

 关闭 [复制链接]

34

主题

9006

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2021-12-8 13:14 | 显示全部楼层 |阅读模式
本帖最后由 技术006 于 2021-12-9 16:52 编辑

在使用金字塔时,刚接触后台程序化的用户,会习惯性的采用图表产生的理论信号与后台交易信号进行对比验证。但是往往会出现不一致的情况,从而不知所措。下面我们从常见的对比方式入手分析:

首先我们先了解一个概念:

运行中加载的公式,其实是独立的公式副本。
那么我们通过两个图表之间对比产生的差异验证这一点。如下列公式运行在下图中,虽然公式相同,但是结果不同;
当然我们也可以通过加载相同公式,采用设置不同参数进行验证亦可。

[PEL] 复制代码
K线数量:DATACOUNT;

截图202112071433235693.png
如上图所示:同一公式被加载到两个窗格内,其结果不同的根本原因是:两个窗格中使用数据量不同


由此我们可以推断得到以下结论:
1)引用策略时,其实也是引用一个新的副本。只是该副本并没由显示在k线图中而已。

注:这种情况下结果不同的原因,一般也是受数据量因素的影响。当然也有其他设置因素的影响,如是否统一使用复权数据、两个副本执行的先后顺序影响等。

言归正传、那图表和后台信号不一致的情况分析:
1.通过前面的介绍,可以率先判定图表策略和后台信号不同的原理之一,是因为数据量不同造成的。

2. 既然如此,那么图表与后台的数据量调整相同后,为什么信号依旧不一致?
答:排除数据因素的影响外,还有一些不可控因素的影响:
2.1)图表与后台函数差异性
图表与后台实现的机制不同,图表函数与后台函数之间可能存在差异。策略逻辑越复杂,差异性可能越明显。

2.2)图表与后台在调取行情数据时机不同
  • 重所周知,当采用固定时间间隔模式,是启动程序化时开始计时运行。启动程序化先后顺序,决定了下次执行检测信号的时机点、时机不同获取到执行结果就可能存在差异。
  • 图表策略与后台策略执行效率不同,假设两者同时开始执行,但是效率高者率先执行到相关数据操作语句,当效率低者执行到同类型的操作语句时,获取到的行情数据可能并非同一笔行情(尤其行情频率高变化大时)。
  • 后台支持同策略条件监控多品种,同样会造成图表执行时间点和后台执行对应品种的时间点存在差异。
  • 后台以效率著称,不需要像图表一样需要进行K线的显示刷新控制,获取数据的方式更直接有效。

2.3)图表自身因素的影响
图表机制是刷新历史数据计算理论信号,那么我们当前看到的信号并不代表当时执行结果(固定时间间隔模式下更为明显)。若信号还存在闪烁,更无法体现出当时的执行结果。

综上所述:很难通过在图表中加载相应公式,与后台执行信号进行比照。根本原因是因为它们是2个公式副本(含后台中引用图表的方式),

                 以及一些不可控因素上的差异性。进而造成图表和后台信号对比过程中,两者结果很难达到一致性。(图表和后台信号不一致但是没有对错之分)

对于后台程序化策略,最有效的跟踪条件方法是使用调试函数debugfile、debugout等,打印输出相应的跟踪后台执行中的实时结果进行定位分析。


金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2024-11-16 00:55 , Processed in 0.399694 second(s), 25 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表