#import "user32.dll" int RegisterWindowMessageW(string MessageName); int PostMessageW(int hwnd,int msg,int wparam,uchar &Name[]); #import #define INDICATOR_NAME "Indicator_name" //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ void StartCustomIndicator(int hWnd,string IndicatorName,bool AutomaticallyAcceptDefaults=false) { uchar name2[]; StringToCharArray(IndicatorName,name2,0,StringLen(IndicatorName)); int MessageNumber=RegisterWindowMessageW("MetaTrader4_Internal_Message"); int r=PostMessageW(hWnd,MessageNumber,15,name2); Sleep(10); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int OnInit() { //--- // In my code where I launch the indicator int hWnd=WindowHandle(Symbol(),0); StartCustomIndicator(hWnd,INDICATOR_NAME); return(INIT_SUCCEEDED); }
你确定吗?
Vasyl Nosal:
你确定吗?
好吧,如果你知道一些,请分享...:)
你确定吗?
Georgiy Liashchenko:
好吧,如果你知道一些,请分享... :)
好吧,如果你知道一些,请分享... :)
:))))))))))))))))))))))))))))))))))))))))))))))))))
哦,对不起。几分钟后。
嗯。我想这是在mql4中。
也许这能帮助你
ChartApplyTemplate()
Vasyl Nosal:
是的,但这不是一个案例,比如我卖EA,一个客户想使用它,他没有相同的模板。即使我给他文件,他也可能喜欢不同的前景。因此,我想从EA中初始化指标。
:))))))))))))))))))))))))))))))))))))))))))))))))))
哦,对不起。几分钟后。
嗯。我想这是在mql4中。
也许这能帮助你
ChartApplyTemplate()
Georgiy Liashchenko:
是的,但这不是一个例子,比如我卖了EA,客户想使用它,他没有相同的模板。即使我给他文件,他也可能喜欢不同的外观。因此,我想从EA中初始化指标。
是的,但这不是一个例子,比如我卖了EA,客户想使用它,他没有相同的模板。即使我给他文件,他也可能喜欢不同的外观。因此,我想从EA中初始化指标。
嗯。也许比使用 "资源 "在EA中添加指标。
#resource "\\Indicators\\SampleIndicator.ex4" int OnInit() { double value=iCustom(_Symbol,_Period,"::Indicators\\SampleIndicator.ex4",0,0);
Vasyl Nosal:
不起作用,EA得到处理,但没有指标。
嗯。也许比使用 "资源 "在EA中添加指标。
也许可以写信给服务台,要求他们像mql5那样添加ChartIndicatorAdd()?
大家好。
我正试图解决当前的问题。在mql4中,没有命令可以像mql5的ChartIndicatorAdd() 那样向图表中添加指标。这真的很悲哀。
我希望我的EA能够启动一个指标。在论坛上,我看到了这样的解决方案,但它不能正常工作。请帮助我
这段代码试图启动指标,但它没有正确读取文件名。它只试图打开(指标名称的第一个字母).ex4或I.ex4。
明显的解决方案是chararray,但编译器返回错误 "parametr转换不允许"。那么,我们怎样才能解决这个问题呢?