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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 不用K线结束做判断真的就不行吗?

   

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


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

主题:不用K线结束做判断真的就不行吗?

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


加好友 发短信
等级:新手上路 帖子:40 积分:0 威望:0 精华:0 注册:2016/1/4 10:41:26
不用K线结束做判断真的就不行吗?  发帖心情 Post By:2016/1/11 14:24:07    Post IP:111.206.20.49[只看该作者]

写一个海龟的修改版,不用K线结束做判断,跟踪多日,结果百思不得其解,特求救:

1.如果突破前高收盘也在最高点时,包括只开一手的持仓Done标志变化等变量一切正常,是我要的结果。
(同理,突破前低收在最低点时也正常,下面以破前高为例)
参考附图中的“开多”图标,相应的日志也正确记录了:
2016-01-11 09:59:37.617    【图表】IC13 运行完毕
2016-01-11 10:01:58.595    2016.01.11 10:01:58【图表】框架:Technic 触发下单 BUY 品种 RB05 下单K线 2016.01.11 15:00:00 公式:海鸥系统 〖SeaGull〗 窗格ID:0 代码行:16
2016-01-11 10:01:58.596    【图表】RB05 运行完毕

2.如果盘中突破前高但收盘没有收在最高点时,在盘中创新高时会有图标“开多”多次同步显示,证明触发开仓信号。但两点理解不了:

  (1)第一次显示图标“开多”后,Done置为1,下次轮询来临时,开仓条件不成立才对。为什么Done又变成0导致反复开仓呢? Done可是全局变量,只初始化一次才对!问题出在哪?
  (2)虽然盘中多次显示图标“开多”,但日志中没有任何记录,说明Buy语句没有执行!但屏幕上都显示了“多头成交变化:1” ,说明是Buy和Done语句都是执行了的?太奇怪了,怎么回事?

在K线内部,全局变量的机制有什么潜规则我们不知道?还是全局变量不能在K线内部用?不解!求大师解惑!


VARIABLE: Out_Long=0,Out_Short=0,Done=0;  //变量申明 
Clock:=currenttime,linethick0;          

成交:Done,linethick0;
多头止损价:Out_Long,linethick0;
空头止损价:Out_Short,linethick0;

Up:=ref(HHV(H,10),1),linethick0; 
Down:=ref(LLV(L,10),1),linethick0; 
Roof:max(up,H),linethick0;   
Base:min(down,L),linethick0;

If  Done=0   then  //空仓时   
    begin 
      if  C>=Roof then
          begin
             BUY(1,1,market);                       //开多
  
             Price_Long:enterprice;
             Out_Long:=enterprice-2;
            // 多头止损价:Out_Long,linethick0;
             // DRAWTEXT(1,LOW,'开多');
             Done:=1;
           多头成交变化:Done,linethick0;             
          end 
      if  C<=Base   then             
          begin
             BUYSHORT(1,1,market);                 //开空
 
             Price_Short:enterprice;
             Out_Short:=enterprice+2 ;             
             // 空头止损价:Out_Short,linethick0;
             // DRAWTEXT(1,H+1,'开空');
             Done:=-1;
            空头成交变化:Done,linethick0; 
          end
    End

If  Done>0  then             // 有多头仓位时
    begin

      if  C<=Out_Long  or  (CurrentTime <150000 and CurrentTime >144800)  then  
      begin
         SELL(1,1,market);           //平多
           //DRAWTEXT(1,H,'平多');
         Done:=0;
      end   
    end
       
if  Done<0  then            // 有空头仓位时
    begin

      if  C>=Out_Short   or  (CurrentTime <150000 and CurrentTime >144800) then     
      begin 
         SELLSHORT(1,1,market);     //平空
         // DRAWTEXT(1,L-1,'平空');
         Done:=0;
      end
    end

持仓:holding,linethick0;








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


加好友 发短信
等级:新手上路 帖子:40 积分:0 威望:0 精华:0 注册:2016/1/4 10:41:26
  发帖心情 Post By:2016/1/11 14:32:47    Post IP:111.206.20.49[只看该作者]

图片点击可在新窗口打开查看抱歉,总说地址不对,发不了图:

C:\fakepath\QQ截图20160111143204.jpg

其实就是在K线下有一个箭头和“开多”两个字
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20160111143204.jpg
图片点击可在新窗口打开查看

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/1/11 14:34:07    Post IP:58.246.57.26[只看该作者]

同一根k线上信号闪烁,当根k线没有结束时:如果当前信号满足,那么你的done就改了;如果当前的信号满足后就又消失了

那么改变的done,是要变回改变之前的。所以当前k线又出现了,这个时候done又改了。

所以:当一根k线没有完全走完时,done的值取决当前的信号:如果有信号,那么done会改变;如果没有或者信号消失了,那么done的直就是上个周期没有改变的值

[此贴子已经被作者于2016/1/11 14:35:39编辑过]


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:40 积分:0 威望:0 精华:0 注册:2016/1/4 10:41:26
  发帖心情 Post By:2016/1/11 15:13:17    Post IP:111.206.20.49[只看该作者]

谢谢大师!

1. 即便是这样,当轮询满足条件执行时只是瞬间的事,所用时间应该远远小于两个Tick之间的空隙,在没有下一个Tick数据过来干扰的前提下,语句执行瞬间时的H和C应该是保持固定的(尽管这种固定的时间可能很短,会被后面的数据刷新,但这个很短的固定时间应该是足够的!),信号如何闪烁呢?

2. 退一步讲,当盘中创新高时,比方说,C有100次变成H时,即使运气不好轮询执行时漏掉50%的信号(漏掉和不漏掉的概率应该各占50%吧?),可只要有一次执行时被正好“撞”上了,那就应该执行相关语句才对!不会运气这么差满足条件的信号全部被漏掉???!

真的不好理解啊?!

有解决的办法吗?谢谢!

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/1/11 15:22:58    Post IP:58.246.57.26[只看该作者]

1.那就说明来新的tick了导致公式刷新了

2.也就是一根k线上反复闪烁就是没有开仓?你是不是用了走完k线的下单模式?



金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:40 积分:0 威望:0 精华:0 注册:2016/1/4 10:41:26
  发帖心情 Post By:2016/1/11 15:33:45    Post IP:111.206.20.49[只看该作者]

答复:
1. 从日志上看,整个程序执行一遍,所需时间在10MS以内,远小于一个TICK的500MS。所以新的TICK数据刷新一说难以成立!
2. 用的是固定时间间隔1秒。 我就是因为很抗拒用K线模式(理由暂且略去)才这样编写程序。

感觉大师也似乎站在我这一边了?

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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/1/11 15:41:19    Post IP:58.246.57.26[只看该作者]

把你的日志发上来看看


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:40 积分:0 威望:0 精华:0 注册:2016/1/4 10:41:26
  发帖心情 Post By:2016/1/11 15:47:53    Post IP:111.206.20.49[只看该作者]

好的,准确地说,整个程序执行一遍的时间才14毫秒。(间隔1秒)
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:pleaceorder.txt



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


加好友 发短信
等级:罗宾汉 帖子:46311 积分:50819 威望:0 精华:2 注册:2011/3/23 8:50:25
  发帖心情 Post By:2016/1/11 15:58:46    Post IP:58.246.57.26[只看该作者]

从日志里面看,就一个对IC13下单触发,用户是对指数进行交易了?


金字塔—专业程序化交易量化投资平台

客户服务部

----------------------------------------------------------- 欢迎您参加我公司的技术培训,具体培训需求请发邮件到service@weistock.com

您的宝贵建议或者投诉,请发往邮箱:weiwei@weistock.com

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


加好友 发短信
等级:新手上路 帖子:40 积分:0 威望:0 精华:0 注册:2016/1/4 10:41:26
  发帖心情 Post By:2016/1/11 17:03:56    Post IP:111.206.20.49[只看该作者]

嗯,虚拟盘交易,验证算法之用。

只要是突破的光头阳线或光脚阴线,结果是正确的,何预期一样。

如果不是,而是盘中突破的阳线或阴线,应该开仓,但结果没有!郁闷.....

发几张图供参考。

 
UploadFile/2016-1/2016111173119655.jpg[/upload]
UploadFile/2016-1/2016111173112197.jpg[/upload]
UploadFile/2016-1/2016111173182374.jpg[/upload]




 回到顶部
总数 27 1 2 3 下一页