nds69 Опубликовано 7 октября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 7 октября, 2020 Добрый День ! Кто может перенести код с treidingview на mt4 или mt5 ? вот сама стратегия. https://www.youtube.com/watch?v=qgNWyr6EaT8https://www.youtube.com/watch?v=u4iw-7klU9g&t=332shttps://vk.com/@crypto.mozart-torgovaya-strategiya-1-indikator-rsi-v-svyazke-s-bollinger-b код самого индикатора https://www.tradingview.com/script/rHIDJgGI-RSI-BB-EMA-Dispersion/ Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rigal Опубликовано 8 октября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 8 октября, 2020 17 часов назад, nds69 сказал: Добрый День ! Кто может перенести код с treidingview на mt4 или mt5 ? вот сама стратегия. https://www.youtube.com/watch?v=qgNWyr6EaT8https://www.youtube.com/watch?v=u4iw-7klU9g&t=332shttps://vk.com/@crypto.mozart-torgovaya-strategiya-1-indikator-rsi-v-svyazke-s-bollinger-b код самого индикатора https://www.tradingview.com/script/rHIDJgGI-RSI-BB-EMA-Dispersion/ Ну вот это точно в другую ветку. В доработку индикаторов, как один из вариантов. И начать можно вот с этого индикатора, в нем не хватает только дисперсии Спойлер BBRSI_v1.mq4 Изменено 8 октября, 2020 пользователем Rigal 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
smoked Опубликовано 12 октября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 12 октября, 2020 Уважаемые знатоки, переделайте пожалуйста индикатор из гисты в канальный для главного окна. Очень нужен для упрощения визуализации. SnakeForce2.mq4 Изменено 17 октября, 2020 пользователем smoked Ссылка на сообщение Поделиться на другие сайты More sharing options...
36R Опубликовано 27 октября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 27 октября, 2020 Приветствую уважаемые программисты. Прикрутите пож-ста алерт на мобильный терминал, при изменении цвета индикатора. За ранее благодарю. SSL_sBar_240.mq4 Изменено 27 октября, 2020 пользователем 36R Ссылка на сообщение Поделиться на другие сайты More sharing options...
Ent Опубликовано 27 октября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 27 октября, 2020 1 час назад, 36R сказал: Приветствую уважаемые программисты. Прикрутите пож-ста алерт на мобильный терминал, при изменении цвета индикатора. За ранее благодарю. Спойлер SSL_sBar_240.mq4 10 \u043a\u0411 · 2 загрузки Добавил. Push сообщение включается настройкой alertsPUSH. SSL_sBar_240.mq4 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Folen Опубликовано 27 октября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 27 октября, 2020 Кто умеет пожалуйста модернизируйте индикатор Stochastic Bar chart под новую билду MT4. Индикатор хороший но под новую билду не работает. Заранее благодарен! stochastic_bar_chart.mq4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
iloirin Опубликовано 28 октября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 28 октября, 2020 Ув. Программисты mql5, сделайте, пожалуйста, чтобы индикатор не рисовал цену открытия бара, а только цену закрытия. Или можно установить в настраиваемых параметрах возможность выбора цвета для цен открытия и закрытия. Заранее благодарна за помощь. ColorBars.mq5 Изменено 28 октября, 2020 пользователем iloirin Ссылка на сообщение Поделиться на другие сайты More sharing options...
Ent Опубликовано 29 октября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 29 октября, 2020 В 27.10.2020 в 23:41, Folen сказал: Кто умеет пожалуйста модернизируйте индикатор Stochastic Bar chart под новую билду MT4. Индикатор хороший но под новую билду не работает. Заранее благодарен! stochastic_bar_chart.mq4 4 \u043a\u0411 · 2 загрузки Пожалуйста. stochastic bar chart mtf.mq4 3 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Ent Опубликовано 29 октября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 29 октября, 2020 17 часов назад, iloirin сказал: Ув. Программисты mql5, сделайте, пожалуйста, чтобы индикатор не рисовал цену открытия бара, а только цену закрытия. Или можно установить в настраиваемых параметрах возможность выбора цвета для цен открытия и закрытия. Заранее благодарна за помощь. ColorBars.mq5 2 \u043a\u0411 · 1 загрузка Пожалуйста. Цена открытия у бара больше не отображается, только закрытия. ColorBars.mq5 1 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Мишок Опубликовано 5 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 5 ноября, 2020 Всем привет! Помогите встроить плагин расчёт лота AgroLotCalculator мт4 в мт5, сам плагин для версии мт5 не нашёл, заранее спасибо!!! Ссылка на сообщение Поделиться на другие сайты More sharing options...
tongorr Опубликовано 5 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 5 ноября, 2020 Здравствуйте. Подскажите пожалуйста из Pine Script кто то может помочь переписать индикатор в МТ4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
usver73 Опубликовано 6 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 6 ноября, 2020 В 05.11.2020 в 16:24, Мишок сказал: Всем привет! Помогите встроить плагин расчёт лота AgroLotCalculator мт4 в мт5, сам плагин для версии мт5 не нашёл, заранее спасибо!!! Вы хотя бы исходники приложили. Уважте тех, к кому обращаетесь Ссылка на сообщение Поделиться на другие сайты More sharing options...
Мишок Опубликовано 7 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 7 ноября, 2020 Извиняюсь ArgoLotCalculator v2.1.ex4 Изменено 7 ноября, 2020 пользователем Мишок Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rigal Опубликовано 11 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 11 ноября, 2020 В 07.11.2020 в 19:06, Мишок сказал: Извиняюсь ArgoLotCalculator v2.1.ex4 24 \u043a\u0411 · 1 загрузка Это не исходники. Это бинарник. Исходники - это файлы с расширением .mq4/.mq5 А с бинарником ничего сделать нельзя Ссылка на сообщение Поделиться на другие сайты More sharing options...
36R Опубликовано 16 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 16 ноября, 2020 Всем добрый день. Подправьте пож-ста индикатор, он сигналит на каждой свече при продаже покупка, при покупке продажу сигналит , нужно только при изменении цвета гистограммы и закрытии сигнальной свечи, и добавьте пож-ста алерт на моб терминал. За ранее благодарю! ultra_filter_2_0_alert_arrows.ex4 ultra_filter_2_0_alert_arrows.mq4 Изменено 16 ноября, 2020 пользователем 36R Ссылка на сообщение Поделиться на другие сайты More sharing options...
gosha342 Опубликовано 17 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 17 ноября, 2020 Help (помогите исправить ошибку в зигзаге под mql5) Вот решил добавить 2й зигзаг к стандартному зигзагу. При компиляции ошибок и предупреждений нет. На графике отображает 1 зигзаг вместо 2 зигзагов, в чём проблема ни пойму (плохо знаю mql). Помогите разобраться. Вот сам код. Спойлер Ссылка на сообщение Поделиться на другие сайты More sharing options...
smoked Опубликовано 19 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 19 ноября, 2020 Уважаемые знатоки, сделайте пожалуйста среднюю линию индикатора двухцветной, чтобы цвет изменялся при изменении направления движения. CHART-2.mq4 Изменено 19 ноября, 2020 пользователем smoked Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rever27 Опубликовано 19 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 19 ноября, 2020 10 часов назад, smoked сказал: Уважаемые знатоки, сделайте пожалуйста среднюю линию индикатора двухцветной Думал напишу за 5 минуты и пойду сериал смотреть. В итоге весь вечер над этой, вроде бы не сложной работой сидел. С тебя пиво. Если не нравится толщина линии, измени 2 строчки #property indicator_width3 3 #property indicator_width4 3 на эти #property indicator_width3 1 #property indicator_width4 1 CHART-2.1.mq4 1 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
smoked Опубликовано 19 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 19 ноября, 2020 Rever27, огромное тебе спасибо. Индюк очень сильно "рисует" и для меня была пытка визуально за ним наблюдать. Посему удваиваю пиво (за каждый глаз ). Куда организовать доставку? Один вопрос: запаздывание изменения цвета на одну свечу, при переходе от медведей к быкам это особенность индюка или поправимо? Смена цвета от быков к медведям вроде всё чётче отрабатывает. Изменено 20 ноября, 2020 пользователем smoked Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rever27 Опубликовано 20 ноября, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 20 ноября, 2020 21 час назад, smoked сказал: это особенность индюка или поправимо? Я не знаю как это поправить. Индикатору пришлось дописать отдельный буфер для отрисовки зеленой линии поверх оранжевой. Вообще код старый и трогать его страшно. Не так эта отрисовка критична. Ссылка на сообщение Поделиться на другие сайты More sharing options...
Sank Опубликовано 7 декабря, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 7 декабря, 2020 Здравствуйте, уважаемые программисты! Помогите. Нужно поправить алерт в индикаторе. Пиликает на каждой свечке при касании гориз. уровня, а хотелось бы чтобы сигналил только при первом касании. Либо сделать так, что после первого касания он уровень не замечает. Либо (что предпочтительнее) чтобы уровень после первого касания дальше не отрисовывался. Support and Resistance Alert Revision 2.mq4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Sank Опубликовано 11 декабря, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 11 декабря, 2020 Никто не отзывается, все заняты. Жаль! Полезный индикатор, в любой стратегии будет полезен. Но вот алерт у него реализован не самым удачным образом. Сам я не программист, поправить не смогу. Видимо у всех дела в преддверие праздников. Ладно, всех с наступающим! Ссылка на сообщение Поделиться на другие сайты More sharing options...
radioman Опубликовано 16 декабря, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 16 декабря, 2020 Всем привет! Нашел на просторах индикатор. Декомпил - не декомпил. Привел в удобочитаемый вид. Но закавыка с limit. Обычно, в общем виде, так: int limit=rates_total-prev_calculated; //---- if(limit>1) // значит первый запуск, или есть изменения в истории - полный перерасчёт всех данных { limit=rates_total-nPeriod-1; //---- ArrayInitialize(ExtBuffer, 0.); ArrayInitialize(IntBuffer, 0.); } //---- и далее for(int i=limit; i>=0; i--) { //---- } Но тут этот вариант не работает. Наименьшее из зол: if(limit=1) // значит появился новый бар - рассчитываются первый и текущий бары { limit=rates_total-nPeriod-1; //---- } И далее.. Хотелось бы использовать первый вариант. Прошу помощи у более опытных в программировании форумчан. Индикатор: Спойлер //+----------------------------------------------+ //| K_Indicator.mq4 | //+----------------------------------------------+ #property strict //---- indicator settings #property indicator_separate_window #property indicator_minimum -1.05 #property indicator_maximum 1.05 #property indicator_buffers 1 #property indicator_color1 clrSandyBrown //---- input parameters input uint Inp_K_Period = 3; // K_Indicator Period //---- buffers double Ext_Buffer[]; //---- int nK_Period; //---- int nDraw_begin1=0; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { string sShort_name; //---- IndicatorDigits(2); //---- nK_Period=int(Inp_K_Period < 3 ? 3 : Inp_K_Period); //---- indicator line SetIndexBuffer(0, Ext_Buffer); SetIndexStyle (0, DRAW_LINE); SetIndexLabel (0, "K ("+(string)nK_Period+")"); //---- name for indicator sShort_name="K_Indicator"; IndicatorShortName(sShort_name); //---- nDraw_begin1=nK_Period; SetIndexDrawBegin(0,nDraw_begin1); //---- initialization done return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { //---- if(rates_total<=nDraw_begin1) return(0); //---- double dCoefficient=0., dPeriodRatio=0., k, dTempValue, dPriceBag, dPriceToAbs, dPreValue, dValue; int nRelayIO, nPeriod=0, A=0, B, C; double ArrayP[300]={0}, ArrayX[300]={0}, ArrayY[300]={0}, ArrayZ[300]={0}; //---- int limit=rates_total-prev_calculated; //---- //if(limit>1) if(limit=1) // need >1 { limit=rates_total-nDraw_begin1-1; //---- ArrayInitialize(Ext_Buffer, 0.); } //---- K_Indicator for(int i=limit; i>=0; i--) { nRelayIO = 0; dTempValue= 0.; //---- nPeriod=int(nK_Period-1 >= 2 ? nK_Period : 3); //---- k=nPeriod; dCoefficient= 12/(k*(k-1)*(k+1)); dPeriodRatio= (nPeriod+1)*0.5; //---- for(A=2; A<=nPeriod; A++) ArrayP[A-1]=ArrayP[A]; //---- ArrayP[nPeriod]=close[i]; //---- for(B=1; B<=nPeriod; B++) { ArrayY[B]= B; ArrayZ[B]= B; ArrayX[B]= ArrayP[B]; } //---- for(B=1; B<=(nPeriod-1); B++) { dPriceBag= ArrayX[B]; C= B; A= B+1; //---- for(A=B+1; A<=nPeriod; A++) { if (ArrayX[A]<dPriceBag) { dPriceBag= ArrayX[A]; C= A; } } //---- dPriceToAbs= ArrayX[B]; ArrayX[B] = ArrayX[C]; ArrayX[C] = dPriceToAbs; dPriceToAbs= ArrayY[B]; ArrayY[B] = ArrayY[C]; ArrayY[C] = dPriceToAbs; } //---- B=1; while(nPeriod>B) { A= B+1; nRelayIO= 1; dTempValue=ArrayZ[B]; //---- while(nRelayIO!=0) { if (ArrayX[B]!=A) { if ((A-B)>1) { dTempValue=dTempValue/(A-B); ArrayZ[B]= dTempValue; } nRelayIO=0; } else { dTempValue=dTempValue+ArrayZ[A]; A=A+1; } } B=A; } dTempValue=0.; for(B=1; B<=nPeriod; B++) dTempValue=dTempValue+(ArrayZ[B]-dPeriodRatio)*(ArrayY[B]-dPeriodRatio); //---- dPreValue=dCoefficient*dTempValue; //---- dValue=dPreValue; if (dValue==0) dValue=0.00001; //---- Ext_Buffer[i]=dValue; } //---- return(rates_total); } //+------------------------------------------------------------------+ Заранее благодарен K_Indicator.mq4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Gamakiv Опубликовано 16 декабря, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 16 декабря, 2020 А вы уверены что в rates_total и prev_calculated есть данные? Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rigal Опубликовано 16 декабря, 2020 Поделиться Доработка индикаторов: общая тема Опубликовано 16 декабря, 2020 8 часов назад, radioman сказал: Всем привет! Нашел на просторах индикатор. Декомпил - не декомпил. Привел в удобочитаемый вид. Но закавыка с limit. Обычно, в общем виде, так: int limit=rates_total-prev_calculated; //---- if(limit>1) // значит первый запуск, или есть изменения в истории - полный перерасчёт всех данных { limit=rates_total-nPeriod-1; //---- ArrayInitialize(ExtBuffer, 0.); ArrayInitialize(IntBuffer, 0.); } //---- и далее for(int i=limit; i>=0; i--) { //---- } Но тут этот вариант не работает. Наименьшее из зол: if(limit=1) // значит появился новый бар - рассчитываются первый и текущий бары { limit=rates_total-nPeriod-1; //---- } И далее.. Хотелось бы использовать первый вариант. Прошу помощи у более опытных в программировании форумчан. Индикатор: Скрыть контент //+----------------------------------------------+ //| K_Indicator.mq4 | //+----------------------------------------------+ #property strict //---- indicator settings #property indicator_separate_window #property indicator_minimum -1.05 #property indicator_maximum 1.05 #property indicator_buffers 1 #property indicator_color1 clrSandyBrown //---- input parameters input uint Inp_K_Period = 3; // K_Indicator Period //---- buffers double Ext_Buffer[]; //---- int nK_Period; //---- int nDraw_begin1=0; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { string sShort_name; //---- IndicatorDigits(2); //---- nK_Period=int(Inp_K_Period < 3 ? 3 : Inp_K_Period); //---- indicator line SetIndexBuffer(0, Ext_Buffer); SetIndexStyle (0, DRAW_LINE); SetIndexLabel (0, "K ("+(string)nK_Period+")"); //---- name for indicator sShort_name="K_Indicator"; IndicatorShortName(sShort_name); //---- nDraw_begin1=nK_Period; SetIndexDrawBegin(0,nDraw_begin1); //---- initialization done return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { //---- if(rates_total<=nDraw_begin1) return(0); //---- double dCoefficient=0., dPeriodRatio=0., k, dTempValue, dPriceBag, dPriceToAbs, dPreValue, dValue; int nRelayIO, nPeriod=0, A=0, B, C; double ArrayP[300]={0}, ArrayX[300]={0}, ArrayY[300]={0}, ArrayZ[300]={0}; //---- int limit=rates_total-prev_calculated; //---- //if(limit>1) if(limit=1) // need >1 { limit=rates_total-nDraw_begin1-1; //---- ArrayInitialize(Ext_Buffer, 0.); } //---- K_Indicator for(int i=limit; i>=0; i--) { nRelayIO = 0; dTempValue= 0.; //---- nPeriod=int(nK_Period-1 >= 2 ? nK_Period : 3); //---- k=nPeriod; dCoefficient= 12/(k*(k-1)*(k+1)); dPeriodRatio= (nPeriod+1)*0.5; //---- for(A=2; A<=nPeriod; A++) ArrayP[A-1]=ArrayP[A]; //---- ArrayP[nPeriod]=close[i]; //---- for(B=1; B<=nPeriod; B++) { ArrayY[B]= B; ArrayZ[B]= B; ArrayX[B]= ArrayP[B]; } //---- for(B=1; B<=(nPeriod-1); B++) { dPriceBag= ArrayX[B]; C= B; A= B+1; //---- for(A=B+1; A<=nPeriod; A++) { if (ArrayX[A]<dPriceBag) { dPriceBag= ArrayX[A]; C= A; } } //---- dPriceToAbs= ArrayX[B]; ArrayX[B] = ArrayX[C]; ArrayX[C] = dPriceToAbs; dPriceToAbs= ArrayY[B]; ArrayY[B] = ArrayY[C]; ArrayY[C] = dPriceToAbs; } //---- B=1; while(nPeriod>B) { A= B+1; nRelayIO= 1; dTempValue=ArrayZ[B]; //---- while(nRelayIO!=0) { if (ArrayX[B]!=A) { if ((A-B)>1) { dTempValue=dTempValue/(A-B); ArrayZ[B]= dTempValue; } nRelayIO=0; } else { dTempValue=dTempValue+ArrayZ[A]; A=A+1; } } B=A; } dTempValue=0.; for(B=1; B<=nPeriod; B++) dTempValue=dTempValue+(ArrayZ[B]-dPeriodRatio)*(ArrayY[B]-dPeriodRatio); //---- dPreValue=dCoefficient*dTempValue; //---- dValue=dPreValue; if (dValue==0) dValue=0.00001; //---- Ext_Buffer[i]=dValue; } //---- return(rates_total); } //+------------------------------------------------------------------+ Заранее благодарен K_Indicator.mq4 9 \u043a\u0411 · 1 загрузка Я, может, не до конца понимаю проблему... Если хочется знать, первый ли это запуск - проверяем prev_calculated <= 0 Если лимит должен быть больше единицы - ну прибавляем к нему единицу по умолчанию и сравниваем limit > 1 Ну, или поясните, почему хочется сравнивать именно > 1? Изменено 16 декабря, 2020 пользователем Rigal Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти