以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  高级功能研发区  (http://weistock.com/bbs/list.asp?boardid=5)
----  [求助]如何实现每天15:00收盘时执行一个动作?  (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=4960)

--  作者:z7c9
--  发布时间:2011/1/23 14:19:54
--  [求助]如何实现每天15:00收盘时执行一个动作?
application.setTimer是每隔多长时间执行一个动作,如何实现在一个具体时间执行一个动作?
--  作者:wjm3333
--  发布时间:2011/1/24 7:06:28
--  

这个就行

Sub APPLICATION_Timer(ID)
    dim h_time
    dim m_time
    dim s_time
    h_time = Hour(Now)
    m_time = Minute(Now)
    s_time = Second(Now)
    If h_time = 14 and m_time = 57 and s_time = 00 then
        CreateObject("SAPI.SpVoice").Speak "马上收盘了!!!快准备平仓!!! "
    End if
 End Sub


--  作者:z7c9
--  发布时间:2011/1/24 8:41:32
--  
以下是引用wjm3333在2011-1-24 7:06:28的发言:

这个就行

Sub APPLICATION_Timer(ID)
    dim h_time
    dim m_time
    dim s_time
    h_time = Hour(Now)
    m_time = Minute(Now)
    s_time = Second(Now)
    If h_time = 14 and m_time = 57 and s_time = 00 then
        CreateObject("SAPI.SpVoice").Speak "马上收盘了!!!快准备平仓!!! "
    End if
 End Sub

呵呵,这种方式想到过,问题是间隔多长时间触发一次,时间过短的话,实在太影响效率了。不过实在不行,也只能这样了。最好提供一个类似vba里ontime这样的机制。


--  作者:阿火
--  发布时间:2011/1/24 9:14:32
--  

设置定时器,定时的时间:收盘时间-现在时间

Sub APPLICATION_Timer(ID)
………\'要执行的代码

application.killtimer  (把定时器取消)

End Sub