[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 603 1...596597598599600601602603604605606607608609610...1145 新评论 keekkenen 2010.06.07 10:59 #6021 41ckm39fi: 我删除了与PrevSignal有关的一切,但信息没有显示出来。 我没有看到房间里的大象...... 做一个缓冲区初始化,因为它是一个指标... #property indicator_chart_window int init(){ IndicatorBuffers(2)。 SetIndexBuffer(0,DeMarker_buffer0)。 SetIndexBuffer(1,MA_buffer1)。 SetIndexStyle(0,DRAW_NONE)。 SetIndexStyle(1,DRAW_NONE)。 } 移除ArraySetAsSeries调用...并在 DeMarker_buffer0[i]=iDeMarker(NULL,0,14,1); 把最后一个参数代替1 i 35bmk845 2010.06.07 12:59 #6022 keekkenen: 我没有看到房间里的大象...... 做一个缓冲区初始化,因为它是一个指标... #property indicator_chart_window int init(){ IndicatorBuffers(2)。 SetIndexBuffer(0,DeMarker_buffer0)。 SetIndexBuffer(1,MA_buffer1)。 SetIndexStyle(0,DRAW_NONE)。 SetIndexStyle(1,DRAW_NONE)。 } 移除ArraySetAsSeries调用...并在 把最后一个参数代替1 i 以下是你得到的东西。 #property indicator_level1 0.3 #property indicator_level2 0.7 #property indicator_chart_window //---- extern int period_MA = 5, period_DeMarker = 14; //---- double DeMarker_buffer0[], MA_buffer1[], Signal_Buffer2[]; #define SIGNAL_BAR 1 //+------------------------------------------------------------------+ int init() { IndicatorBuffers(2); SetIndexBuffer(0,DeMarker_buffer0); SetIndexBuffer(1,MA_buffer1); SetIndexStyle(0,DRAW_NONE); SetIndexStyle(1,DRAW_NONE); return(0); } //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| //+------------------------------------------------------------------+ int start() { int i,limit=ArraySize(DeMarker_buffer0); int counted_bars=IndicatorCounted(); //---- if(counted_bars>0) counted_bars--; limit=Bars-counted_bars; //---- for(i=limit; i>=0; i--) DeMarker_buffer0[i]=iDeMarker(NULL,0,14,i); //---- for(i=limit; i>=0; i--) MA_buffer1[i]=iMAOnArray(DeMarker_buffer0,limit,5,0,MODE_LWMA,i); //---- if(MA_buffer1[SIGNAL_BAR] - 0.3 > 0 && 0.3 - MA_buffer1[SIGNAL_BAR+1] >= 0) //---- Alert( "sMA(", Symbol(), ", ", Period(), ") - BUY!!!" ); //---- if(0.7 - MA_buffer1[SIGNAL_BAR] > 0 && MA_buffer1[SIGNAL_BAR+1] - 0.7 >= 0) //---- Alert("sMA(", Symbol(), ", ", Period(), ") - SELL!!!"); return(0); } 但我对这句话感到困惑 MA_buffer1[i]=iMAOnArray(DeMarker_buffer0,limit,5,0,MODE_LWMA,i); 其他组成指标拼出了Bars而不是limit。 keekkenen 2010.06.07 15:06 #6023 41ckm39fi: 这就是出来的东西。 但我对这句话感到困惑 其他组成指标拼出了Bars而不是limit。 我也很困惑......这个iMAOnArray()函数,我不确定如果第二个参数不是0,它能正确计算平均数,即在整个DeMarker_buffer0 阵列上计算,最好把0... 35bmk845 2010.06.07 15:44 #6024 keekkenen: 我也很困惑......这个iMAOnArray()函数,我不确定如果第二个参数与0不同,它能正确计算平均数,即在整个DeMarker_buffer0阵列上计算,最好把0... 我把 "Bars "代替了 "limit",程序就开始发出信息了!!!。它似乎按照我想要的方式工作。只有信息走了很多遍,直到信号栏关闭。 Александр 2010.06.07 16:43 #6025 下午好。下载了EA,保存了它,编译了它,重新加载了终端。你能告诉我为什么添加到MT4的EA没有附在图表上吗?我做错了什么吗? keekkenen 2010.06.07 17:54 #6026 41ckm39fi: 我开的是Bars,而不是... 只有信息走了很多遍,直到信号栏关闭。 0仍然是正确的... 并把时间控制带回来... static int PrevTime = Time[0]; //---- if(PrevTime >= Time[0] ) return(0); //---- PrevTime = Time[0]; // а здесь проверяйте условия на алерт 35bmk845 2010.06.07 18:23 #6027 我忘了说,这句话 int i,limit=ArraySize(DeMarker_buffer0); 我由 int i,limit; 并在 行中用Bars代替limit。 MA_buffer1[i]=iMAOnArray(DeMarker_buffer0,Bars,5,0,MODE_LWMA,i); 现在我将尝试像你说的那样返回PrevTime,并将第二个参数Bars 替换为0。 [删除] 2010.06.08 02:35 #6028 例如,我有一个运行在mql4上的专家顾问。 当我通过外部变量 运行它时,我设置了一些值。 问题:我可以在任何时候改变吗? 在专家顾问的操作过程中(例如,从键盘),一些变量,在这种情况下,它不会引起专家顾问的重新启动? Владимир Тезис 2010.06.08 02:44 #6029 Jazzz: 例如,我有一个运行在mql4上的专家顾问。 当我通过外部变量运行它时,我设置了一些值。 问题:我可以在任何时候改变吗? 在专家顾问的操作过程中(例如,从键盘),一些变量,在这种情况下,它不会引起专家顾问的重新启动? 如果你使用全局级别的变量,你可以。要在不关闭EA的情况下从键盘上改变它们的值,请在终端上按F3。 [删除] 2010.06.08 05:05 #6030 谢谢你! 1...596597598599600601602603604605606607608609610...1145 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
我删除了与PrevSignal有关的一切,但信息没有显示出来。
我没有看到房间里的大象......
做一个缓冲区初始化,因为它是一个指标...
#property indicator_chart_window
int init(){
IndicatorBuffers(2)。
SetIndexBuffer(0,DeMarker_buffer0)。
SetIndexBuffer(1,MA_buffer1)。
SetIndexStyle(0,DRAW_NONE)。
SetIndexStyle(1,DRAW_NONE)。
}
移除ArraySetAsSeries调用...并在
把最后一个参数代替1 i
我没有看到房间里的大象......
做一个缓冲区初始化,因为它是一个指标...
#property indicator_chart_window
int init(){
IndicatorBuffers(2)。
SetIndexBuffer(0,DeMarker_buffer0)。
SetIndexBuffer(1,MA_buffer1)。
SetIndexStyle(0,DRAW_NONE)。
SetIndexStyle(1,DRAW_NONE)。
}
移除ArraySetAsSeries调用...并在
把最后一个参数代替1 i
以下是你得到的东西。
但我对这句话感到困惑
其他组成指标拼出了Bars而不是limit。
这就是出来的东西。
但我对这句话感到困惑
其他组成指标拼出了Bars而不是limit。
我也很困惑......这个iMAOnArray()函数,我不确定如果第二个参数与0不同,它能正确计算平均数,即在整个DeMarker_buffer0阵列上计算,最好把0...
我开的是Bars,而不是...
只有信息走了很多遍,直到信号栏关闭。
0仍然是正确的...
并把时间控制带回来...
我忘了说,这句话
我由
int i,limit;
并在
行中用Bars代替limit。
现在我将尝试像你说的那样返回PrevTime,并将第二个参数Bars 替换为0。
例如,我有一个运行在mql4上的专家顾问。
当我通过外部变量 运行它时,我设置了一些值。
问题:我可以在任何时候改变吗?
在专家顾问的操作过程中(例如,从键盘),一些变量,在这种情况下,它不会引起专家顾问的重新启动?
例如,我有一个运行在mql4上的专家顾问。
当我通过外部变量运行它时,我设置了一些值。
问题:我可以在任何时候改变吗?
在专家顾问的操作过程中(例如,从键盘),一些变量,在这种情况下,它不会引起专家顾问的重新启动?
如果你使用全局级别的变量,你可以。要在不关闭EA的情况下从键盘上改变它们的值,请在终端上按F3。