以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://www.weistock.com/bbs/index.asp) -- 高级功能研发区 (http://www.weistock.com/bbs/list.asp?boardid=5) ---- [求助]关于在PEL语言中调用QQ窗口发送信息的问题 (http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=9511) |
-- 作者:woden -- 发布时间:2011/12/27 17:13:09 -- [求助]关于在PEL语言中调用QQ窗口发送信息的问题 在自定义函数中定义了如下函数:
Function QQMSSG(Formula,QQNum,QQMSG) End Function
然后在PEL语言书写的策略中如下调用: if VBuy then begin buy(1,1,limitr,VOP); {开多} VQQM:=QQMSSG(\'金字塔自动交易群X\',\'hello-由金字塔程序发出\'); end;
逐K线模式下,运行没有反应.请客服人员帮助解决.谢谢. |
-- 作者:26327756l -- 发布时间:2011/12/27 17:18:38 -- 等待高手回答 |
-- 作者:admin -- 发布时间:2011/12/27 17:34:06 -- 你的代码存在2个问题 1,自定义函数只能传递数值参数,不支持字符串 2,在逐周期模式下使用,要加过滤手段,否则会导致多次频繁的发送
一般是应对最后一个周期有效的信号才起作用 GLOBALVARIABLE bb=0;//申明一个全局变量,用于控制过滤 if VBuy then begin buy(1,1,limitr,VOP); {开多} if islastbar and bb<>barpos then begin bb:= barpos; VQQM:=QQMSSG(close,open); end end; [此贴子已经被作者于2011-12-27 17:34:23编辑过]
|
-- 作者:sdcgj209 -- 发布时间:2011/12/29 9:44:17 -- 老师能给写全吗?这个功能还是不会用? |
-- 作者:26327756l -- 发布时间:2011/12/29 10:17:31 -- 上面已将写全了, 按你的方式创建自定义函数, 有具体问题在问吧 |
-- 作者:FT -- 发布时间:2011/12/29 15:44:01 -- 1,自定义函数只能传递数值参数,不支持字符串 我想在发送的信息是成交价格、成交时间,这些动态的信息,如何进行呢?PEL可以实现吗? |
-- 作者:woden -- 发布时间:2011/12/29 16:02:35 -- [求助] 按照ADMIN老大的意思写了个测试用的,在逐K线模式下,出了信号后还是不停地发报警声音,直到这个K线走完才停, 怎么样才能只发一次报警声音呢?求再解答一次,监测分笔盘中时的计数器VCountAlert已经与barpos相等,不知为什么还会不停地执行. /////////////////////////////////////////////////////////////////////////////// //测试用策略:前收盘突破前10周期高点做多,突破前10周期低点做空 ////////////////////////////////////////////////////////////////////////////// GLOBALVARIABLE: VCountAlert=0;//申明一个全局变量,用于控制过滤 [此贴子已经被作者于2011-12-29 16:09:01编辑过]
|
-- 作者:woden -- 发布时间:2011/12/29 16:55:35 -- 在程序最后加上ViewVCountAlert:VCountAlert,linethick0,coloryellow; 分笔回放显示,在条件成立时VCountAlert等于barpos,条件结束后下一K线时,VCountAlert=0了,和设计它保存 条件成立时的barpos值不同,为什么呢,它不是全局变量吗?百思不得其解啊.为何新K线时被清零了. |
-- 作者:王锋 -- 发布时间:2011/12/29 22:13:46 -- 启用调试功能看看. 如果使用调试功能,参考 金字塔决策交易系统公式调试功能技巧 http://v.youku.com/v_show/id_XMzAzMTY3NDU2.html |
-- 作者:guotx2010 -- 发布时间:2011/12/30 10:12:46 -- 针对上面的问题,我总结一下,可以用两个步骤解决传递字符串问题: 1、在Perl语言中使用extgbdatsset函数将要传递的字符串写到全局变量; 2、在自定义函数中使用document.getExtData获取该全局变量,然后进行发送。 如: if VBuy then begin buy(1,1,limitr,VOP); {开多} if islastbar and bb<>barpos then begin bb:= barpos; extgbdataSet(\'字符串\',\'开多信号:\'+numtostr(close,0)); //这里的‘字符串’是你自己取的变量名 VQQM:=QQMSSG(close,open); end end; 在VBA的自定义函数中这样写: QQMSG=document.getextData("字符串") \'获取公式中设置的变量值 Set obj = CreateObject("WWSCommon.TCGroup")
[此贴子已经被作者于2011-12-30 10:19:13编辑过]
|