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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 阿火秘籍中走完k线+固定轮询混合模式的问题

   

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


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

主题:阿火秘籍中走完k线+固定轮询混合模式的问题

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


加好友 发短信
等级:论坛游侠 帖子:238 积分:0 威望:0 精华:0 注册:2013/6/23 11:21:22
阿火秘籍中走完k线+固定轮询混合模式的问题  发帖心情 Post By:2015/3/2 14:39:00 [只看该作者]

      各位群友,本人有一个走完K线加固定轮询的模型,一般都是开仓走完K线,止盈止损固定轮询盘中实时触发的思路。这样的话整体而言要走固定轮询模式,之前我的做法是用DYNIFO(207)=TIME 或者是在当前K线走完后1-2秒钟内开仓,但后来发现这样做法可能会有漏单的情况发生,滑点一般也会偏大。后来参考了论坛中火哥的写法,就下面一段语句,相信大多数群友都已经看过。火哥这套写法确实是解决了走完K线开仓,止损盘中实时触发的功能。单对于下面的代码,我一直有不解之处。
runmode:0;
variable:zs=0,cc=0;
ma5:=ma(c,5);
ma20:=ma(c,20);
entertime:=time>100000 and time<144500;
if holding>0 and cc<=0 then sell(1,1,limitr,o);
if holding<0 and cc>=0 then sellshort(1,1,limitr,o);
if holding=0 and cc>0 then buy(1,1,limitr,o);
if holding=0 and cc<0 then buyshort(1,1,limitr,o);
if cc>0 and l<zs then begin
 sell(1,1,limitr,min(o,zs-0.6));
 cc:=0;
end
if cc<0 and h>zs then begin
 sellshort(1,1,limitr,max(o,zs+0.6));
 cc:=0;
end
if cc>0 and ma5<ma20 then cc:=0;
if cc<0 and ma5>ma20 then cc:=0;
if cc=0 and ma5>ma20 and entertime then begin
 cc:=1;
 zs:=c-10;
end
if cc=0 and ma5<ma20 and entertime then begin
 cc:=-1;
 zs:=c+10;
end
if time>=150000 then begin
 cc:=0;
end
 
这里开仓是在走完K线后,究竟是怎么实现的,看了许久都没想明白,比如我下面的图里面:

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20150302143352.png
图片点击可在新窗口打开查看
这里离当前K线走完还剩3秒钟,我查看变量cc也已经变为1了,照理说,if holding<0 and cc>=0 then sellshort(1,1,limitr,o) 这句话要执行平空操作了,但这里却没有执行操作,还是等走完K线,开始以为是交易指令limitr,o)的问题,后来发现改为市价单market也是要等走完当根K线再开仓的。
 
想来想去都没明白,火哥这里固定轮询模式下的走完K线模式开单,究竟是怎么实现的。请各位大侠详细一点解释一下,在此感激不尽啊!
 

 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/3/2 15:30:43 [只看该作者]

阿火这代码是两部分组成的,你看下原帖红色标注部分if holding<0 and cc>=0 then sellshort(1,1,limitr,o) 这种的效果就是走完k

蓝色部分才是实时止损的代码块。

 

你代码从上往下阅读,cc首先是等于0的不开仓,然后代码下面本根k条件成立,把cc条件设为了1,l然后下一根k判断这个条件成立就去开仓

if cc=0 and ma5>ma20 and entertime then begin
 cc:=1;
 zs:=c-10;
end


 回到顶部
帅哥哟,离线,有人找我吗?
江平
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:74 积分:0 威望:0 精华:0 注册:2013/8/19 15:11:43
  发帖心情 Post By:2015/3/2 15:43:51 [只看该作者]

一个问题啊老师 
假设 我现在是在30分钟的周期下 K线走完的含义就是29分钟末快要到30分钟的时候,如果在15分钟的时候
if cc=0 and ma5>ma20 and entertime then begin
 cc:=1;
 zs:=c-10;
end
这段代码触发,那CC=-1 并且HOLDINNG=0,这里不开仓我理解的,但是如果下一笔交易发生在17分钟,因为CC是全局变量,这时候CC依然等于-1
这时候if holding=0 and cc<0 then buyshort(1,1,limitr,o);这段代码就会触发,就会开仓了。
但是这时候才到第17分钟上,依旧不满足K线走完的含义,这里还是会开仓,这不就跟K线走完开仓矛盾了吗?
那阿火这段代码是怎么解决这个问题的。
谢谢老师

 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/3/2 16:00:02 [只看该作者]

红色的代码块是放在程序开头部分,你这里的cc改变代码是在程序的下面,不影响前面的数值。

就像

variable:num=0;

p:num;                //下面的赋值不会改变这里num的值

if c>o then

num:=num+1;

 


 回到顶部
帅哥哟,离线,有人找我吗?
cgysdf
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:238 积分:0 威望:0 精华:0 注册:2013/6/23 11:21:22
  发帖心情 Post By:2015/3/2 16:01:37 [只看该作者]

我这里用buy(1,1,market)模拟去跑,也是走完K线开仓的。
就是说和(limitr,o)指令没关系的。
上面的图中,cc在盘中,没有走完K线就已经被赋值为1了,上面的holding<=0的条件也符合的,我的代码改为:if holding<0 and cc>=0 then sellshort(1,1,market);
盘中为什么没开仓呢?也是要等走完K线。
[此贴子已经被作者于2015/3/2 16:02:46编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
江平
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:74 积分:0 威望:0 精华:0 注册:2013/8/19 15:11:43
  发帖心情 Post By:2015/3/2 16:02:26 [只看该作者]

这个我清楚 我是说过了两分钟又出现了一笔成交数据  固定轮询不是会在刷一下程序的的吗?那这样之前CC=-1 现在不就可以了吗

 回到顶部
帅哥哟,离线,有人找我吗?
cgysdf
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:238 积分:0 威望:0 精华:0 注册:2013/6/23 11:21:22
  发帖心情 Post By:2015/3/2 16:23:39 [只看该作者]

你代码从上往下阅读,cc首先是等于0的不开仓,然后代码下面本根k条件成立,把cc条件设为了1,l然后下一根k判断这个条件成立就去开仓——————这里为什么是下一根K判断,而不是下一秒钟判断?我是固定轮询的诶。

 回到顶部
帅哥哟,离线,有人找我吗?
yukizzc
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:21598 积分:0 威望:0 精华:1 注册:2010/7/31 16:35:30
  发帖心情 Post By:2015/3/2 16:39:59 [只看该作者]

因为代码是从上到下的

比如

a:=0;

p:a;

a:=5;

你说这边的p应该是多少??是0还是5?理解下

如果你要盘中计算的值那要用到ex的全局变量,看下链接这边有详细说明

http://www.weistock.com/WeisoftHelp/zbgs003.htm


 回到顶部
帅哥哟,离线,有人找我吗?
cgysdf
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:238 积分:0 威望:0 精华:0 注册:2013/6/23 11:21:22
  发帖心情 Post By:2015/3/2 17:11:47 [只看该作者]

全局变量本身就是一个走完K线的东西,都说得通了。。

 回到顶部
帅哥哟,离线,有人找我吗?
风度翩翩
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:194 积分:0 威望:0 精华:0 注册:2012/12/28 17:19:34
  发帖心情 Post By:2016/4/15 9:34:00 [只看该作者]

全局变量 参与计算判定,都是上周期收盘时刻的值,本周期变化内变化,只影响下一周期K线,我是这么理解的。

 回到顶部