Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Проблема в том, что если переходишь на другой таймфрейм, то на графике появляется всякий мусор.
Если закрываешь Мета Трейдер, напимер на дневном таймфрейме, и запускаешь заново, то на текущем таймфрейме все ОК, переходим на часовой все ОК, возвращаемся на дневной - опять мусор???
//+------------------------------------------------------------------+ //| SM Bars With MFI.mq4 | //| Copyright © 2005, Smazovec developer | //| smazovec@mail.ru | //+------------------------------------------------------------------+ //| For SM Bars With MFI we recommend next chart settings ( press F8 | //| or select on menu 'Charts'->'Properties...'): | //| - On 'Common' Tab disable 'Chart on Foreground' checkbox | //+------------------------------------------------------------------+ #property copyright "Copyright © 2005, smazovec developer." #property link "smazovec@yandex.ru" #property indicator_chart_window #property indicator_buffers 4 double ExtMapBuffer1[]; double ExtMapBuffer2[]; double ExtMapBuffer3[]; double ExtMapBuffer4[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators style SetIndexStyle(0, DRAW_HISTOGRAM, 0, 2, Lime); SetIndexStyle(1, DRAW_HISTOGRAM, 0, 2, Pink); SetIndexStyle(2, DRAW_HISTOGRAM, 0, 2, Blue); SetIndexStyle(3, DRAW_HISTOGRAM, 0, 2, SaddleBrown); //---- indicator buffers mapping SetIndexBuffer(0, ExtMapBuffer1); SetIndexBuffer(1, ExtMapBuffer2); SetIndexBuffer(2, ExtMapBuffer3); SetIndexBuffer(3, ExtMapBuffer4); return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { double smOpen, smHigh, smLow, smClose; double smRange, smVolume, smMFI; double smOpen2, smHigh2, smLow2, smClose2; double smRange2, smVolume2, smMFI2; for(int i = 0; i < Bars; i++) { smOpen = Open[i]; smClose = Close[i]; smHigh = High[i]; smLow = Low[i]; smOpen2 = Open[i+1]; smClose2 = Close[i+1]; smHigh2 = High[i+1]; smLow2 = Low[i+1]; smVolume = Volume[i]; smVolume2 = Volume[i+1]*1.1; smRange = smHigh - smLow; smMFI = smRange / smVolume; smRange2 = smHigh2 - smLow2; smMFI2 = (smRange2 / smVolume2) * 1.1; if ((smVolume > smVolume2) && (smMFI > smMFI2)) { ExtMapBuffer1[i] = smHigh; ExtMapBuffer2[i] = smLow; } else if ((smVolume > smVolume2) && (smMFI < smMFI2)) { ExtMapBuffer2[i] = smHigh; ExtMapBuffer1[i] = smLow; } else if ((smVolume < smVolume2) && (smMFI > smMFI2)) { ExtMapBuffer3[i] = smHigh; ExtMapBuffer4[i] = smLow; } else { ExtMapBuffer4[i] = smHigh; ExtMapBuffer3[i] = smLow; } } return(0); } //+------------------------------------------------------------------+ //| End. | //+------------------------------------------------------------------+