pel公式调用VB自定义函数,传递字符串的问题 [金字塔]
- 咨询内容:
VB自定义函数不支持传递字符串参数,搜索了好一会儿,可以用超全局变量解决。但遇到问题,不能正常传递,问题会出在哪儿了?
公式:GLOBALVARIABLE:买入信号='买入'; //这里的‘字符串’是你自己取的变量名testtxt();
自定义函数:Function testtxt(Formula) '系统会在逐K线模式解释公式时的每个周期都会调用此函数一遍,因此设计时应该注重程序的执行效率,不要重复的执行一些没必要的代码 testtxt=0 MSG=document.getextData("买入信号") MsgBox "传递字符串:" & MSGEnd Function
运行弹出的对话框提示:“传递字符串:100057”,最后变成了数字? - 金字塔客服:
此主题相关图片如下:qq截图20130911122009.jpg
- 用户回复:
好吧,之前对字符串的问题,在论坛搜索过的,但没有找到解决办法。
王管应说的是这个帖子的10楼吧:http://www.weistock.com/bbs/dispbbs.asp?boardid=5&id=9511
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")
call obj.TransMessage(QQNum, QQMSG)
Set obj = Nothing但根据这个方法,重新试了一下,还是不对,弹出窗口依然显示的是数字?
if islastbar then
begin
extgbdataSet('买入信号','开多信号:'+numtostr(close,0)); //这里的‘字符串’是你自己取的变量名
VQQM:=QQMSSG();
end
bb:1;Function QQMSSG(Formula)
'系统会在逐K线模式解释公式时的每个周期都会调用此函数一遍,因此设计时应该注重程序的执行效率,不要重复的执行一些没必要的代码
QQMSSG=0
QQMSG=document.getextData("字符串") '获取公式中设置的变量值
MsgBox QQMSGEnd Function
- 网友回复:
字符串的操作要用
EXTGBSTRING( )
EXTGBSTRINGSET( , )这2个函数
- 网友回复:
感谢回复!
EXTGBSTRING( )和EXTGBSTRINGSET( , ) 是试过的,但是没有得到预期的结果,
是下面的代码有问题吗?
运行后,依然提示不对?郁闷!
if islastbar then
begin
EXTGBSTRINGSET('买入信号','开多信号:'+numtostr(close,0)); //这里的‘字符串’是你自己取的变量名
VQQM:=QQMSSG();
end
bb:1;Function QQMSSG(Formula)
'系统会在逐K线模式解释公式时的每个周期都会调用此函数一遍,因此设计时应该注重程序的执行效率,不要重复的执行一些没必要的代码
QQMSSG=0
QQMSG=document.GetExtString("买入信号") '获取公式中设置的变量值
MsgBox QQMSGEnd Function
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 1145508240 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容