[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 184 1...177178179180181182183184185186187188189190191...631 新评论 Heroix 2012.06.15 07:55 #1831 下午好! 我需要找到一个过去的抛物线系列的最后一点的值。就说这个吧。 我写了一个函数来寻找它。 double FindLastLevel () {double Level; int i; for (i=0; Level==0; i++) {double SAR0=iSAR(Symbol(),Period(), Step, Maximum, i), SAR1=iSAR(Symbol(),Period(), Step, Maximum, i+1), SAR2=iSAR(Symbol(),Period(), Step, Maximum, i+2); if (SAR0>SAR1){if(SAR1<SAR2){Level=SAR2; return (Level);}} if (SAR0<SAR1){if(SAR1>SAR2){Level=SAR2;return (Level);}} }} 也就是说,它重新计算抛物线的每一个值,从当前条形图开始计算。一旦违反了数值逐渐减少/增加的条件,该函数就会返回 "打破 "趋势的那个条形上的数值。然而,如果有1个小节的跳跃,像这样的跳跃。 该函数 "没有看到 "它。 请告知如何重写该函数?也许有一个现成的解决方案? Vadim Zhunko 2012.06.15 07:59 #1832 Heroix: 下午好! 我需要找到一个过去的抛物线系列的最后一点的值。就说这个吧。 我写了一个函数来寻找它。 也就是说,它重新计算抛物线的每一个值,从当前条形图开始计算。一旦违反了数值逐渐减少/增加的条件,该函数就会返回 "打破 "趋势的那个条形上的数值。然而,如果有1个小节的跳跃,就像这个。 该函数 "没有看到 "它。 请告知如何重写该函数?也许有一个现成的解决方案? 你还必须看一下与价格有关的位置。 Heroix 2012.06.15 08:04 #1833 Zhunko: 你还必须看一下与价格有关的位置。 也就是说,不仅要比较指标本身,还要比较其在i处的数值相对于i处的价格值的位置,比如? [删除] 2012.06.15 08:11 #1834 看看这个顾问,看看是否有什么有趣的东西 https://www.mql5.com/ru/code/10649 [删除] 2012.06.15 08:21 #1835 人们告诉我,为什么if(OPN<CLS && (CLS-OPN)>=50*Point)不找????? Paladin80 2012.06.15 08:28 #1836 nlp2311: 问题。 为什么病情没有好转 如果(Close_1>Open_1 && ( Close_1-Open_1)>=30*Point) buffer[i]=High_1; ...而不是 if(Close_1>Open_1 && ( Close_1-Open_1)>=30*Point) buffer[i]=High_1; 这样做 if (Close_1>Open_1) { if (Close_1-Open_1>=30*Point) buffer[i]=High_1; } 在此公布出现这种情况的代码部分。也许循环中出现了错误。使用SRC 在论坛上发布代码。 [删除] 2012.06.15 10:06 #1837 paladin80: 试试这个,而不是 像这样。 在此公布出现这种情况的代码部分。也许循环中出现了错误。在论坛上,使用SRC 发布代码。 试过....,但没有作用。 我把括号放在不同的地方,尽量扭曲......我不能再!!!!!!!!!!!))))。 这就是为什么我问我如何才能做到不失真):? 似乎这个蠕动的MT4根本看不到条件if(.....)下的点数...() 更重要的是,我分别写了一个指标来保持这个条件...我不能(...)。 为什么会这样呢? Victor Nikolaev 2012.06.15 11:08 #1838 nlp2311: 这里是....混蛋(((!!!! 已经生气了... 你检查了什么? [Удален] 2012.06.15 13:09 #1839 下午好,我写了一个指标,我把两个不同的MACD放在同一个窗口和同一个刻度上。 我现在需要再次浏览所有的SEEN条,找到ZERO条上第二条指标信号线(橙色)与第一条信号线(红色)相等的时间。 谁能帮我搞清楚? Код 2 ----- #property indicator_separate_window #property indicator_buffers 6 #property indicator_color1 Lime #property indicator_color2 Red #property indicator_color5 Aqua #property indicator_color6 DarkOrange #property indicator_width1 2 #property indicator_width5 2 //--- buffers double Macd1Buffer[]; double Signal1Buffer[]; double Macd2Buffer[]; double Signal2Buffer[]; double Macd3Buffer[]; double Signa13Buffer[]; //--- for one bar datetime last; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_NONE); SetIndexBuffer(0,Macd1Buffer); SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(1,Signal1Buffer); SetIndexStyle(2,DRAW_NONE); SetIndexBuffer(2,Macd2Buffer); SetIndexStyle(3,DRAW_NONE); SetIndexBuffer(3,Signal2Buffer); SetIndexStyle(4,DRAW_NONE); SetIndexBuffer(4,Macd3Buffer); SetIndexStyle(5,DRAW_LINE); SetIndexBuffer(5,Signa13Buffer); IndicatorDigits(Digits); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { if(last>=Time[0]) return; double max_M1=-0.01,min_M1=0.01, max_M2=-0.01,min_M2=0.01, max_S1=-0.01,min_S1=0.01, max_S2=-0.01,min_S2=0.01, max1=-0.01,min1=0.01, max2=-0.01,min2=0.01, max3, M, Dmax_3, D_sig, D_sig_Last=1.0; int j=0; while(j<WindowBarsPerChart()-1) { //---- for(int i=0;i<=j;i++) { Macd1Buffer[i]=iMACD(0,PERIOD_H1,6,12,5,PRICE_CLOSE,MODE_MAIN,i+1); // основная линия 1-ого MACD Macd2Buffer[i]=iMACD(0,PERIOD_H1,12,26,9,PRICE_CLOSE,MODE_MAIN,i+1); // основная линия 2-ого MACD max_M1=MathMax(Macd1Buffer[i],max_M1); min_M1=MathMin(Macd1Buffer[i],min_M1); max_M2=MathMax(Macd2Buffer[i],max_M2); min_M2=MathMin(Macd2Buffer[i],min_M2); Signal1Buffer[i]=iMACD(0,PERIOD_H1,6,12,5,PRICE_CLOSE,MODE_SIGNAL,i+1); // сигнальная линия 1-ого MACD Signal2Buffer[i]=iMACD(0,PERIOD_H1,12,26,9,PRICE_CLOSE,MODE_SIGNAL,i+1); // сигнальная линия 2-ого MACD max_S1=MathMax(Signal1Buffer[i],max_S1); min_S1=MathMin(Signal1Buffer[i],min_S1); max_S2=MathMax(Signal2Buffer[i],max_S2); min_S2=MathMin(Signal2Buffer[i],min_S2); max1=MathMax(max_M1,max_S1); // максимум 1-ого MACD min1=MathMin(min_M1,min_S1); // минимум 1-ого MACD max2=MathMax(max_M2,max_S2); // максимум 2-ого MACD min2=MathMin(min_M2,min_S2); // минимум 2-ого MACD } M=(max1-min1)/(max2-min2); // соотношение диапазонов max-min 1-ого и 2-ого MACD max3=max2*M; // max 3-его MACD,т.е."нового" 2-ого MACD Dmax_3=max1-max3; // смещение 3-ого MACD относительно 1-ого MACD for( i=0;i<=j;i++) { Macd3Buffer[0]=Macd2Buffer[0]*M+Dmax_3; // приведение диапазона max-min 2-ого MACD к диапазону 1-ого MACD, // т.е.подучаем 3-ий MACD и совмещаем max и min 3-его MACD с // max и min 1-ого MACD Signa13Buffer[0]=Signal2Buffer[0]*M+Dmax_3; // max и min 1-ого MACD } D_sig=MathAbs(Signal1Buffer[0]-Signa13Buffer[0]); // разница между сигнальными линиями 1-ого и 3-ого MACD на // нулевом баре if(Signa13Buffer[0]==Signal1Buffer[0]) break; D_sig_Last=D_sig; j++; } Comment( "\n"," Баров = ",WindowBarsPerChart()-1, "\n"," Macd1Buffer = ",DoubleToStr(Macd1Buffer[0],4), "\n"," Signal1Buffer = ",DoubleToStr(Signal1Buffer[0],4), "\n"," Macd3Buffer = ",DoubleToStr(Macd3Buffer[0],4), "\n"," Signa13Buffer = ",DoubleToStr(Signa13Buffer[0],4), "\n"," D_sig = ",DoubleToStr(D_sig,4)); //---- last=Time[0]; //---- return(0); } //+------------------------------------------------------------------+ [删除] 2012.06.15 13:13 #1840 Vinin: 那么水平线等于什么呢? 啊哈!!!。它就在主EA的屏幕上)。30点............................(((((((((((((((((((( 尽管如此,如果(....)我可以通过这个balalaika,我的MT4条件运行呢?)。 1...177178179180181182183184185186187188189190191...631 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
下午好!
我需要找到一个过去的抛物线系列的最后一点的值。就说这个吧。
我写了一个函数来寻找它。
也就是说,它重新计算抛物线的每一个值,从当前条形图开始计算。一旦违反了数值逐渐减少/增加的条件,该函数就会返回 "打破 "趋势的那个条形上的数值。然而,如果有1个小节的跳跃,像这样的跳跃。
该函数 "没有看到 "它。
请告知如何重写该函数?也许有一个现成的解决方案?
下午好!
我需要找到一个过去的抛物线系列的最后一点的值。就说这个吧。
我写了一个函数来寻找它。
也就是说,它重新计算抛物线的每一个值,从当前条形图开始计算。一旦违反了数值逐渐减少/增加的条件,该函数就会返回 "打破 "趋势的那个条形上的数值。然而,如果有1个小节的跳跃,就像这个。
该函数 "没有看到 "它。
请告知如何重写该函数?也许有一个现成的解决方案?
你还必须看一下与价格有关的位置。
也就是说,不仅要比较指标本身,还要比较其在i处的数值相对于i处的价格值的位置,比如?
看看这个顾问,看看是否有什么有趣的东西 https://www.mql5.com/ru/code/10649
问题。
为什么病情没有好转
如果(Close_1>Open_1 && ( Close_1-Open_1)>=30*Point) buffer[i]=High_1;
...而不是
这样做
在此公布出现这种情况的代码部分。也许循环中出现了错误。使用SRC 在论坛上发布代码。
试试这个,而不是
像这样。
在此公布出现这种情况的代码部分。也许循环中出现了错误。在论坛上,使用SRC 发布代码。
试过....,但没有作用。
我把括号放在不同的地方,尽量扭曲......我不能再!!!!!!!!!!!))))。
这就是为什么我问我如何才能做到不失真):?
似乎这个蠕动的MT4根本看不到条件if(.....)下的点数...()
更重要的是,我分别写了一个指标来保持这个条件...我不能(...)。
为什么会这样呢?
这里是....混蛋(((!!!!
已经生气了...
你检查了什么?
下午好,我写了一个指标,我把两个不同的MACD放在同一个窗口和同一个刻度上。
我现在需要再次浏览所有的SEEN条,找到ZERO条上第二条指标信号线(橙色)与第一条信号线(红色)相等的时间。
谁能帮我搞清楚?
那么水平线等于什么呢?
啊哈!!!。它就在主EA的屏幕上)。30点............................((((((((((((((((((((
尽管如此,如果(....)我可以通过这个balalaika,我的MT4条件运行呢?)。