Группа "Стол заказов MQL"

Рейтинг 2146



РЕКОМЕНДУЮ



Прошу создать советника на основе индикатора

Прошу создать советник на основе индикатора. Бай — зелёная вверх, селл — вниз. И главное — риск (рассчет лота в зависимости от величины депо, в процентах)
Стоп лосс, тейк профит.
Вроде бы для разгона депо пойдет.
Ссылка на индикатор dropmefiles.net/ru/kSPWvXfzTL
  • 0
  • Просмотров: 2982
  • 30 июля 2024, 14:08
  • walter8319
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Сделать аналог индюка
30 июля 2024
30 июля 2024

Брокер для ваших роботов, 15 лет на рынке

Комментарии (20)

+
0
на 31-е
avatar

  35  AM2 Сообщений: 16256 - Андрей

  • 30 июля 2024, 16:41
+
0
*lalala* 
Забыл добавить… там иногда открывает несколько стрелок в одном направлении, можно, чтобы тейк был общим? (Ну, сработало усреднение)
avatar

  4  walter8319 Автор Сообщений: 100

  • 30 июля 2024, 16:50
+
0
Вы хоть название индикатора напишите, если хотите чтоб вам советник написали.
avatar

  20  alex30774 Сообщений: 748

  • 30 июля 2024, 18:12
комментарий был удален 2024-07-31 01:31:57 walter8319

+
0
www.transfernow.net/dl/20240730BmOp0HHi
Вот индикатор. В стандартном варианте не получается загрузить
avatar

  4  walter8319 Автор Сообщений: 100

  • 31 июля 2024, 01:26
+
0
Exe- шный файл, не годится.
avatar

  18  Boris54 Сообщений: 810 - ПенSионер

  • 31 июля 2024, 08:44
+
0
в окне данных буфера доступны
другое дело, что исходник интересно пощупать :) 
Редактирован: 31 июля 2024, 08:55
avatar

  6  srt Сообщений: 43

  • 31 июля 2024, 08:53
+
+1
По этому индикатору, но под другим названием здесь два советника уже написаны, если не больше(не следил).
А вот для тебя srt открытый код, щупай индикатор и богатей если сможешь(потому что индикатор рисует безбожно)
Я только туда две стрелки прикрутил.
АМ2 тоже на этом форуме стрелки прикручивал, но через прокладку.

<code>//------------------------------------------------------------------
#property copyright "mladen"
#property link      "www.forex-tsd.com"
//------------------------------------------------------------------
#property indicator_separate_window
#property indicator_buffers 6
#property indicator_color1 Orange
#property indicator_color2 DarkGray
#property indicator_color3 Orange
#property indicator_color4 LimeGreen
#property indicator_color5 Blue
#property indicator_color6 Red
#property indicator_style2 STYLE_DOT
#property indicator_style3 STYLE_DOT
#property indicator_style4 STYLE_DOT
#property indicator_style5 STYLE_SOLID
#property indicator_style6 STYLE_SOLID

//
//
//
//
//

extern int    RsiLength  = 4;
extern int    RsiPrice   = PRICE_CLOSE;
extern int    HalfLength = 5;
extern int    DevPeriod  = 100;
extern double Deviations = 1.0;
extern bool   AlertOn    = true;

double buffer1[];
double buffer2[];
double buffer3[];
double buffer4[];
double buffer5[];
double buffer6[];

datetime AlertLast;

//------------------------------------------------------------------
//
//------------------------------------------------------------------
//
//
//
//

int init()
{
   HalfLength=MathMax(HalfLength,1);
         SetIndexBuffer(0,buffer1); 
         SetIndexBuffer(1,buffer2);
         SetIndexBuffer(2,buffer3); 
         SetIndexBuffer(3,buffer4);
         SetIndexBuffer(4,buffer5); 
         SetIndexStyle(4,DRAW_ARROW,STYLE_SOLID, 1);
         SetIndexArrow(4,233);
         SetIndexBuffer(5,buffer6);
         SetIndexStyle(5,DRAW_ARROW,STYLE_SOLID, 1);
         SetIndexArrow(5,234);
   return(0);
}
int deinit() { return(0); }

//------------------------------------------------------------------
//
//------------------------------------------------------------------
//
//
//
//
//

int start()
{
   int i,j,k,counted_bars=IndicatorCounted();
      if(counted_bars<0) return(-1);
      if(counted_bars>0) counted_bars--;
           int limit=MathMin(Bars-1,Bars-counted_bars+HalfLength);

   //
   //
   //
   //
   //
   
   for (i=limit; i>=0; i--) buffer1[i] = iRSI(NULL,0,RsiLength,RsiPrice,i);
   for (i=limit; i>=0; i--)
   {
      double dev  = iStdDevOnArray(buffer1,0,DevPeriod,0,MODE_SMA,i);
      double sum  = (HalfLength+1)*buffer1[i];
      double sumw = (HalfLength+1);
      for(j=1, k=HalfLength; j<=HalfLength; j++, k--)
      {
         sum  += k*buffer1[i+j];
         sumw += k;
         if (j<=i)
         {
            sum  += k*buffer1[i-j];
            sumw += k;
         }
      }
      buffer2[i] = sum/sumw;
      buffer3[i] = buffer2[i]+dev*Deviations;
      buffer4[i] = buffer2[i]-dev*Deviations;
      
      
   }
 //---------------
  for (i=limit; i>=0; i--)
   {
      double linemain0  = buffer1[i];
      double linemain1  = buffer1[i+1];
      double lineup0  = buffer4[i];
      double lineup1  = buffer4[i+1];
      double linedn0  = buffer3[i];
      double linedn1  = buffer3[i+1];
      
      if (linemain0<lineup0 && linemain1>lineup1)buffer5[i]=linemain0;
      if (linemain0>linedn0 && linemain1<linedn1)buffer6[i]=linemain0;
         
      
     
      
      
   }
   
   //---
   
   if (AlertOn && AlertLast != Time[0]) {
       if (buffer1[0] > buffer3[0] && buffer1[1] < buffer3[1]) {
            AlertLast = Time[0];
            Alert("RSI-TMA :: ", _Symbol, " :: ", eGetPeriodString(), "  >  Touch TOP Band");
       } else if (buffer1[0] < buffer4[0] && buffer1[1] > buffer4[1]) {
            AlertLast = Time[0];
            Alert("RSI-TMA :: ", _Symbol, " :: ", eGetPeriodString(), "  >  Touch BOTTOM Band");
       }
    }   
   
   //---
   
   return(0);
}

string eGetPeriodString()
{
    string periodStr = "??";
    if      (_Period == PERIOD_M1)  { periodStr = "M1";  }
    else if (_Period == PERIOD_M5)  { periodStr = "M5";  }
    else if (_Period == PERIOD_M15) { periodStr = "M15"; }
    else if (_Period == PERIOD_M30) { periodStr = "M30"; }
    else if (_Period == PERIOD_H1)  { periodStr = "H1";  }
    else if (_Period == PERIOD_H4)  { periodStr = "H4";  }
    else if (_Period == PERIOD_D1)  { periodStr = "D1";  }
    else if (_Period == PERIOD_W1)  { periodStr = "W1";  }
    else if (_Period == PERIOD_MN1) { periodStr = "MN1"; }
    //---
    return(periodStr);
}
</code>

Редактирован: 31 июля 2024, 10:42
avatar

  20  alex30774 Сообщений: 748

  • 31 июля 2024, 10:33
+
0
спасибо *friends* 
avatar

  6  srt Сообщений: 43

  • 31 июля 2024, 15:06
+
+1
avatar

  35  AM2 Сообщений: 16256 - Андрей

  • 31 июля 2024, 09:54
+
0
сов- пушка гонка!!!*lalala* 
avatar

  6  Ramboo Сообщений: 92 - Ram

  • 1 августа 2024, 10:58
+
0
К сожалению открывает сделки рандомно, а не по стрелкам…
avatar

  4  walter8319 Автор Сообщений: 100

  • 1 августа 2024, 12:07
+
0
На м5
avatar

  4  walter8319 Автор Сообщений: 100

  • 1 августа 2024, 12:09
+
0
Вручную — норм, при тейке в 10 пипс (я по сложному проценту разгоняю), а с советником — в тестере не по стрелкам открывает, на реальном вообще не открывает(
avatar

  4  walter8319 Автор Сообщений: 100

  • 1 августа 2024, 12:10
+
0
А не обращали внимание индюк рисует? :D  Мне кажется дело в этом, а не в боте.
avatar

  22  poker Сообщений: 849

  • 1 августа 2024, 12:10
+
0
Не рисует вообще
avatar

  4  walter8319 Автор Сообщений: 100

  • 1 августа 2024, 12:40
+
0
Странно, а у меня рисует
avatar

  20  alex30774 Сообщений: 748

  • 1 августа 2024, 13:46
+
0
Я не обновляю и не переключаю тф
avatar

  4  walter8319 Автор Сообщений: 100

  • 1 августа 2024, 13:59
+
0
Понятно, а сделку на протяжение одного бара держите, или дольше.
avatar

  20  alex30774 Сообщений: 748

  • 1 августа 2024, 14:22
+
0
советник шаблон — сеточник, по стрелкам только направление выбирает (обратное тренду)
avatar

  6  srt Сообщений: 43

  • 1 августа 2024, 12:11

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий