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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件高级功能研发区 → [求助][原创]日内分笔交易实时化

   

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


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

主题:[求助][原创]日内分笔交易实时化

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


加好友 发短信
等级:论坛游民 帖子:274 积分:841 威望:0 精华:10 注册:2010/7/12 15:25:05
[求助][原创]日内分笔交易实时化  发帖心情 Post By:2010/10/28 17:10:14 [只看该作者]

代码二,是一次行的运行,想通过运用代码一修改一下代码二,使之达到实时刷新的效果

 

PS:我了解一点VBA,不太熟悉,交易思路就是代码二,但修改成实时的时候思路有点改不过来,希望高手赐教!

 

代码一

Sub APPLICATION_VBAStart()
 call Application.SetTimer(0,2000) '创建一个0号定时器,间隔时间2秒
End Sub

 

 '定时器事件处理
 Application.ActivateFrame "Technic" '确保技术分析主框架处于激活状态

 

 

代码二

Sub dengjiaxian()
    ' 得到框架名称为"Technic",窗格名称为"Main"的窗格对象
    Set Grid = Technic.GetGridByName("Main")
    set minutedata = Grid.GetMinuteData
    Count =  minutedata.Count
    open = minutedata.newprice(0)
    mj1close = minutedata.newprice(0)
    mj2close = minutedata.newprice(0)
    j = 0
    k = 0
    m = 0
    dtyl = 0
    ktyl = 0
    qj = 10//这边需要根据不同的品种设置不同的参数,具体的可以根据每个人的需要

    for i = 1 to count-1
        close = minutedata.newprice(i)
        if close > open and close-open > qj then
           open = close
           if m = 0 then dtdbyk = 0 else dtdbyk = mj2close-close
           if m = 0-1 or m = 0 then
              mj1close = close
              dtyl = dtyl+dtdbyk
              application.MsgOut "第"&i+1&"笔"&" "&"多:"&" "&close&" "&"单笔盈利"&" "&" "&dtdbyk&" "& "当日空头累计盈利为:" &dtyl
              j = j+1
           end if
           m = 1
        elseif   close < open and open-close > qj then
           open = close
           if m = 0 then dtdbyk = 0 else ktdbyk = close - mj1close
           if m = 1 or m = 0 then
              mj2close = close
              ktyl = ktyl+ktdbyk
              application.MsgOut "第"&i+1&"笔"&" "&"空:"&" "&close&" "&"单笔盈利"&" "&" "&ktdbyk&" "&"当日多头累计盈利为:" &ktyl
              k = k+1
           end if
           m = 0-1
        end if
     next
     application.MsgOut Date &" " &Time&" "& "多头" &j& "次" &" "& "多头盈利" &ktyl& "点"&" "& "空头" &k& "次"&" "& "空头盈利" &dtyl& "点" &" "& "总计" &k+j& "次"&" "& "总盈利" &ktyl+dtyl& "点"
End Sub

[此贴子已经被作者于2010-10-28 17:11:30编辑过]

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


加好友 发短信
等级:管理员 帖子:7302 积分:32559 威望:1000 精华:45 注册:2003/12/30 16:34:32
  发帖心情 Post By:2010/10/28 17:15:39 [只看该作者]

设定定时器后,只有在添加

Sub APPLICATION_Timer(ID)

End Sub
这个过程处理事件后,才行。


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


加好友 发短信
等级:论坛游民 帖子:274 积分:841 威望:0 精华:10 注册:2010/7/12 15:25:05
  发帖心情 Post By:2010/10/28 17:22:43 [只看该作者]

这个我知道的。但是,每次运行,都是重头计算一遍。我是说如何把代码二的思路改成实时刷新的。我自己写的代码二,但我改不过来,可能是思维没有变化过来。

 

我想,如果把那个循环去掉,那我靠循环过来的变量怎么处理呢。所以我一时间我处理不过来了。

[此贴子已经被作者于2010-10-28 17:24:12编辑过]

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


加好友 发短信
等级:论坛游民 帖子:274 积分:841 威望:0 精华:10 注册:2010/7/12 15:25:05
  发帖心情 Post By:2010/10/28 17:26:19 [只看该作者]

存在字典或者数组里?????想的我头疼。

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


加好友 发短信
等级:论坛游民 帖子:274 积分:841 威望:0 精华:10 注册:2010/7/12 15:25:05
  发帖心情 Post By:2010/10/28 17:32:08 [只看该作者]

要是谁能改成分笔图上的技术指标也可以。我想了很久。没有尝试成功!


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


加好友 发短信
等级:论坛游侠 帖子:574 积分:3167 威望:0 精华:0 注册:2009/10/10 11:13:01
  发帖心情 Post By:2010/10/28 21:00:05 [只看该作者]

 加计数器,记录已处理的数据的位置。下次处理时从该位置开始执行

 回到顶部