欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 日内每一次kdj金叉就开多,死叉就开空,收盘价平仓

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有4221人关注过本帖树形打印复制链接

主题:日内每一次kdj金叉就开多,死叉就开空,收盘价平仓

帅哥哟,离线,有人找我吗?
FireScript
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/11/15 9:25:09    Post IP:180.169.30.6[显示全部帖子]

如果你是图表交易,那你得用2个指标,2个窗口交易。分别交易多空,否则单个图表上不能锁仓的。
代码如下:
input:n(9,1,100,10),p1(3,2,40,4),p2(3,2,40,4);//参数设置

RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
J:=3*K-2*D;


kdjjc:cross(k,d);//kdj金叉
kdjsc:cross(d,k);

//多头
if kdjjc then buy(1,1,market);

if time=CLOSETIME(0) then sell(holding>0,holding,market);

//空头
//if kdjsc then buyshort(1,1,market);
//if time=CLOSETIME(0) then sellshort(holding<0,holding,market);

这是多头的指标。空头的话,你把空头部分注释去掉就行了,然后把多头部分注释掉。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/11/15 16:57:20    Post IP:180.169.30.6[显示全部帖子]

 因为单个图表上不能实现锁仓啊的,单个窗口上开多必须平空,开空必须平多。所以得弄2个指标,2个窗口操作。
[此贴子已经被作者于2019/11/15 16:57:40编辑过]


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/11/15 17:09:04    Post IP:180.169.30.6[显示全部帖子]

回测里面用的是复权的K吧。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/11/18 8:46:47    Post IP:180.169.30.6[显示全部帖子]

 我是说你回测里面设置的复权,图表上没有。2个不一致,对比结果自然有差异了。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/11/18 14:34:07    Post IP:180.169.30.6[显示全部帖子]

数据量会影响到kdj里面一些值的运算。kdj里面用到的SMA函数对数据起始点比较敏感。

你这样:

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

在加载在图表上的公式名称上右键-回测、

这样能尽量保持设置一致。

同样代码,我这边图上显示的都和你那里有差异。因为K线起点不一样,sma算的会有差异。 你回测和图表上K线起始位置不一致,会导致你现在这种情况。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/11/18 16:25:21    Post IP:180.169.30.6[显示全部帖子]

 应该就是数据不一样导致的。这个不一致指的是测试开始的时间:

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

这里勾选下,然后设置成一样。当然了前提是你本地数据必须覆盖了这个范围。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/11/19 14:59:45    Post IP:180.169.30.6[显示全部帖子]

我建议你这样做:
在x轴上右键 然后把K线起始时间设置成一个确定的值

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看
把指标加载上去,在指标名称上右键-测试公式:

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看


通过这种方式去回测。 在你2个金字塔上都这样操作。注意相关的设置是否一致。
这样可以在回测报告中和图表上直接进行对照。而且因为K线其实位置一样,你代码里面对数据敏感的函数的计算就会是一样的了。

如果最终还是有问题。可以联系客服远程看下。

[此贴子已经被作者于2019/11/19 15:00:56编辑过]


命数如织,当如磐石。
 回到顶部