以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 高级功能研发区 (http://weistock.com/bbs/list.asp?boardid=5) ---- VBA字符转换函数getstringptr有问题? (http://weistock.com/bbs/dispbbs.asp?boardid=5&id=162280) |
-- 作者:qihuo2018 -- 发布时间:2018/3/23 15:35:56 -- VBA字符转换函数getstringptr有问题? 金字塔图表的函数: 1.当前公式名称:formulaname; 2.当前合约代码:stkname; 3.当前市场代码:marketlabel; 这以上三个函数的返回值均是地址,不能直接被VBA使用。 VBA的下单函数order.buy()需要合约代码和市场代码不能直接使用,需要转换,我用以下函数提示缺少对象,请问老师,该如何修改?谢谢! Function gtr3(Formula,name3) strname1=formula.getstringptr(name3) gtr3=strname1 End Function 另,后台交易如何取得合约代码和市场代码? |
-- 作者:无为剑 -- 发布时间:2018/3/23 18:42:30 -- 请问你上述VBS代码有何问题?你意思是没法打印出name3的字符串吗? |
-- 作者:qihuo2018 -- 发布时间:2018/3/23 21:38:58 -- 谢谢老师回复! 提示缺少对象。 缺少以下红色字体部分,不知道该怎么写? Function gtr3(Formula,name3) set formula=?; strname1=formula.getstringptr(name3) gtr3=strname1 End Function 另,后台交易如何取得合约代码和市场代码? |
-- 作者:无为剑 -- 发布时间:2018/3/23 21:45:13 -- set formula=?; 这句话是不要的,formula对象是触发gr3自定义函数事件时带过来的对象,可以直接使用。
如果你需要直接获取你需要的信息,可以直接在formula对象中获取,示例:
Set Grid = formula.ParentGrid
Grid对象里都包含你需要的信息
|
-- 作者:qihuo2018 -- 发布时间:2018/3/23 22:41:46 -- 谢谢老师! 程序通过! 但是,当前策略名称取得不对: Set Grid = formula.ParentGrid \'取得的是框架名称 formula_name=grid.name 取当前策略名称(公式名称)怎么写?查了好半天没有查到。 |
-- 作者:马良 -- 发布时间:2018/3/24 15:10:12 -- 策略名称在 formula对象中,在编程手册上能查到 |