PDA

View Full Version : 将指标中的变量传递给EA



艾达康纳
03-04-2009 18:57, 06:57 PM
我试图看到它在哪里我可以有一个命令打开时,它击中指标线

我想知道什么是将缓冲区变量结果传递给EA中的变量的最佳方式?我有两个指标...每个都有6行(每个都有自己的缓冲区)....

因此,如果价格=结果;开放交易......并且每笔交易只开一笔交易......我有4条线,当1号线被击中时,我不希望它在1号线开启另一笔交易......它可以打到2号线,开一笔交易...

第0行是引导线,它是一条移动平均线
在第1行,打开基本大小很多
在第2行,打开基本大小很多* 2
在第3行,打开基本大小很多* 3
在第4行,打开基本大小很多* 6
在第5行,在止损时关闭交易
一旦它回到0线,它将关闭所有交易

所以如果基数是.01,那么它将打开.01交易,.02交易,.03交易和.06交易......因此,将会打开很多.12的尺寸

另外,我可以使用一个数组来存储每条线出现比例的次数,是正确的?当线1被击中直到线0被击中时,是否有办法启动时钟?因此,测量回到移动平均线需要多长时间

加里
10-12-2021 12:47, 12:47 PM
看起来像全局变量的工作:
http://www.metatrader.info/node/93
http://www.forexbrace.com/content/view/116/52/

艾达康纳
10-12-2021 14:08, 02:08 PM
双GlobalVariableGet(字符串名称)所以,我需要将变量定义为全局指标....使用EA中的GlobalVariableGet(),正确吗?我在指标MA_Buffer [i] = iMA(NULL,0,MA_Period,MA_Shift,MA_Method,MA_Applied_Price,i)中有这个变量; double GlobalVariableSet(line0,MA_Buffer [i] = iMA(NULL,0,MA_Period,MA_Shift,MA_Method,MA_Applied_Price,i))我想将它传递给EA line0 = GlobalVariableGet(line0)======== ============这是正确的吗?

安达贝南西奥
10-12-2021 15:29, 03:29 PM
指标内:GlobalVariableSet(MyVariable,12345.670);在EA中:double IndiorVariable = GlobalVariableGet(MyVariable);请注意,您只能传递Double,不允许使用字符串。所以你必须有想象力才能将你的信息压缩成一个真实的(小数)数字。

艾达康纳
10-12-2021 16:50, 04:50 PM
谢谢!缓冲区是双变量,所以应该工作

piltlafixxa
10-12-2021 18:11, 06:11 PM
使用icustom函数从您的指标中提取数据。不需要全局变量。只要每行都是外部缓冲区,就可以使用icustom函数来引用它。

CHohanna
10-12-2021 19:31, 07:31 PM
我第二个的建议。你应该避免滥用全局变量来完成这些任务。知道你设置的这些变量可以被任何其他指标或EA查看/使用/设置。未能控制它的使用可能是灾难性的。使用iCustom从自定义指标获取值使用全局变量来存储程序状态值,可能用于周末或灾难恢复后的交易延续。问候,禅宗

艾达康纳
10-12-2021 20:52, 08:52 PM
好的...所以指标是循环与几个缓冲区....所以当涉及到设置开放的订单,我需要有一些沿线:东西有继续检查价格,看看它是否交叉线1(我是否需要EA中的另一家酒吧柜台?)上面有一条线1,下面有一条线1 ...所以在买单上,我只需要担心下面的第一行....订单行1以上,如果价格=行1没有这个货币的开放交易,开放交易什么是最好的方式来编程这从伪进入mq4语言?用一行的语言,我应该能够处理所有其他的行

Pachizo85
10-12-2021 22:13, 10:13 PM
看起来像全局变量的工作:
http://www.metatrader.info/node/93
http://www.forexbrace.com/content/view/116/52/哇。这些是很好的资源。我甚至在第二个源代码中找到了一些示例EA,显示了如何使用全局变量。感谢您介绍这些资源。