- Как кодировать?
- Мультитаймфреймовые индикаторы
- эксперт на стохастике
Есть конкретный вопрос - смотрите , когда я выставляю Стохастик в советнике и задаю его параметры , он конечно срабатывает при пересичений линий , но проблема в том что я не знаю как сделать так чтобы он покупал только в зоне перепроданности ( 20 ) , и продавал в зоне перекупленности ( 80 ) ... Владимир помогите пожалуйста - где и как мне нужно выставить данные для этой функции ... Буду вам благодарен !!!
Пример кода: RSI intrazone trading Simple.
- www.mql5.com
скажите , а эти параметры можно задать в советнике "" сгенерировать "" , или нужно писать в ввиде кодов в советнике "" шаблон ""
спасибо заранее ...!
скажите , а эти параметры можно задать в советнике "" сгенерировать "" , или нужно писать в ввиде кодов в советнике "" шаблон ""
спасибо заранее ...!
Это готовый советник. Нет никаких "сгенерировать" и "шаблон".
Непосредственно блок который отвечает за формирование торгового сигнала - это функция SearchTradingSignals.
Здесь происходит получение данных индикатора с трех последних баров и сравнение в какой зоне находится индикатор.
//+------------------------------------------------------------------+ //| Search trading signals | //+------------------------------------------------------------------+ bool SearchTradingSignals(void) { if(m_prev_bars==m_last_deal_in) // on one bar - only one deal return(true); double rsi[]; ArraySetAsSeries(rsi,true); int start_pos=0,count=3; if(!iGetArray(handle_iRSI,0,start_pos,count,rsi)) return(false); int size_need_position=ArraySize(SPosition); //--- BUY Signal if(rsi[m_bar_current]>Inp_RSI_Level_Up) { if(!InpReverse) { ArrayResize(SPosition,size_need_position+1); SPosition[size_need_position].pos_type=POSITION_TYPE_BUY; if(InpPrintLog) Print(__FILE__," ",__FUNCTION__,", OK: ","Signal BUY"); return(true); } else { ArrayResize(SPosition,size_need_position+1); SPosition[size_need_position].pos_type=POSITION_TYPE_SELL; if(InpPrintLog) Print(__FILE__," ",__FUNCTION__,", OK: ","Signal SELL"); return(true); } } //--- SELL Signal if(rsi[m_bar_current]<Inp_RSI_Level_Down) { if(!InpReverse) { ArrayResize(SPosition,size_need_position+1); SPosition[size_need_position].pos_type=POSITION_TYPE_SELL; if(InpPrintLog) Print(__FILE__," ",__FUNCTION__,", OK: ","Signal SELL"); return(true); } else { ArrayResize(SPosition,size_need_position+1); SPosition[size_need_position].pos_type=POSITION_TYPE_BUY; if(InpPrintLog) Print(__FILE__," ",__FUNCTION__,", OK: ","Signal BUY"); return(true); } } //--- return(true); }
Есть конкретный вопрос - смотрите , когда я выставляю Стохастик в советнике и задаю его параметры , он конечно срабатывает при пересичений линий , но проблема в том что я не знаю как сделать так чтобы он покупал только в зоне перепроданности ( 20 ) , и продавал в зоне перекупленности ( 80 ) ... Владимир помогите пожалуйста - где и как мне нужно выставить данные для этой функции ... Буду вам благодарен !!!
Вот из терминала эксперт - с которым можно экспериментировать.
тут можно индикатор менять
//+------------------------------------------------------------------+ //| Initialization of the indicators | //+------------------------------------------------------------------+ bool CSampleExpert::InitIndicators(void) { //--- create MACD indicator if(m_handle_macd==INVALID_HANDLE) if((m_handle_macd=iStochastic(NULL,0,5,3,3,MODE_SMA,STO_LOWHIGH))==INVALID_HANDLE) { printf("Error creating MACD indicator"); return(false); } //--- succeed return(true); } //+------------------------------------------------------------------+
вот можно так со стохастик
//--- check for long position (BUY) possibility if(m_macd_current<20) if(m_macd_current>m_signal_current && m_macd_previous<m_signal_previous) if(MathAbs(m_macd_current)>(m_macd_open_level)) \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ //--- check for short position (SELL) possibility if(m_macd_current>80) if(m_macd_current<m_signal_current && m_macd_previous>m_signal_previous) if(m_macd_current>(m_macd_open_level))
а вот можно испытать его в тестере
господа спасибо что отвечаете я это очень ценю ... но к сожалению ничего не работает ... как думаете почему ? я вам вышлю заодно и коды с моего - скажете что там нужно подправить чтобы был диапазон нужный ...
***
- 2021.04.21
- www.mql5.com
Вот из терминала эксперт - с которым можно экспериментировать.
тут можно индикатор менять
вот можно так со стохастик
а вот можно испытать его в тестере
господа спасибо что отвечаете я это очень ценю ... но к сожалению ничего не работает ... как думаете почему ? я вам вышлю заодно и коды с моего - скажете что там нужно подправить чтобы был диапазон нужный
***
- 2021.04.21
- www.mql5.com
господа спасибо что отвечаете я это очень ценю ... но к сожалению ничего не работает ... как думаете почему ? я вам вышлю заодно и коды с моего - скажете что там нужно подправить чтобы был диапазон нужный ...
***
Пожалуйста код вставляйте при помощи кнопки (нажимаете кнопку, затем в появившееся окно вставляете свой код) или прикрепляйте код при помощи кнопки .
Пожалуйста код вставляйте при помощи кнопки (нажали кнопку, в появившееся окно вставили код) или прикрепляйте код при помощи кнопки .
спасибо что отвечаете .. владимир я поставил как вы сказали и у меня выдало 54 ошибки и 8 предупреждений с ваших кодов ... это печально ... что будем делать ? ?
я вам вышлю мои коды ... может через них можно будет настроить диапазон ...
***
- 2021.04.21
- www.mql5.com
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования