两个问题请教 [金字塔]
- 咨询内容:
问题一: VARDATA的问题
RUNMODE :1;//序列模式
fl:0;//给指标赋初值
fx:0;//给指标赋初值
FUNC1;//自定义函数,计算指标FL
x:=fl;
上述FUNC1自定义函数,通过"formula.VARDATA("fl") = fl"将VBA计算后的FL、fx传递到PEL中,实际看FL、FX指标的显示也是计算正确的,但是问题出在X:=FL,理论上应该等于FL,可实际X等于0,请问原因,如何解决?
虽然可以用FL:=FUNC1的方式返回值,但因为我希望FUNC返回FL、FX甚至还有更多的参数,所以只能用VARDATA方法
问题二:VBA画图问题
以前在PEL中用DRAWICON、DRAWLINE函数画图很简单,可现在VBA编程最好是直接通过VBA画图,不再返回到PEL,VBA中GRID对象也有同名的方法,例如DRAWICON(X,Y,Path)(X,Y,Path),可我希望的达到PEL一样的效果,在符合条件的K线上画图标,而VBA的DRAWICON的参数是坐标,请问如何达到和PEL画图函数相同的效果。
- 金字塔客服:
一、因为fl是vba里的变量,你pel里的fl是0,自然x:=fl是0了。你可以在vba里去用SetExtData 写到全局变量,然互pel的x去读取对应的值
二、PelsByPos 以周期序列为参数,返回与之相对应的X坐标象素位置。
PriceToPels 以当前价格为参数,取其在窗格相对应的Y坐标位置(象素)。
建议客户帮助信息里多找找,也可以自己动手写下
- 用户回复:
谢谢老师解答,我这就能节省少浪费好多时间。
另外,再请问formula.VARDATA("fl") = fl",这个对象方法不就是将VBA中的变量FL的数值传递到PEL中变量FL吗,大不了在PEL中我换个变量名,叫FLX,用formula.VARDATA("flX") = fl"?
- 网友回复: 并且,我让FL指标显示出来,确认用VARDATA传递成功了的,但就是将FL再赋值给别的变量就出问题
有思路,想编写各种指标公式,程序化交易模型,选股公式,预警公式的朋友
可联系技术人员 QQ: 511411198 进行 有偿 编写!(不贵!点击查看价格!)
相关文章
-
没有相关内容