Напишу советник бесплатно - страница 162

 
SanAlex #:

Функция взята с кода Vladimir Karputov

Спасибо! Сейчас опробую

 

Здравствуйте! Уважаемые программисты очень прошу написать советник по индикатору. Индикатор не рисует, что самое главное. Показывает неплохие результаты. Два режима работы. Первый -при появлении ромбика должна отрываться позиция, при обратном сигнале ордер закрывается и открывается в обратную сторону. Второй режим должен быть фиксированный тейк профит и стоп.


<*.ex* файл был удалён>

Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Для разработки торговых систем в платформу встроен собственный язык программирования MetaQuotes Language 5 ( MQL5 ), среда разработки MetaEditor и...
Файлы:
 
SanAlex #:

Функция взята с кода Vladimir Karputov

Навскидку в местах открытия позиций нужно закрывать противоположные:

//--- open position
         if(m_trade.PositionOpen(Symbol(),ORDER_TYPE_BUY,InpLots,priceAsk,0.0,tpAsk))
{
            printf("Position by %s to be opened",Symbol());
            ClosePositions(POSITION_TYPE_SELL);

}
else
...
 
Maksim Sovenko #:

Навскидку в местах открытия позиций нужно закрывать противоположные:

Открыто у вас 10 позиции в SELL  и 10 позиции в BUY и вам нужно закрыть только  BUY позиции. Чел. спрашивал именно это. А то что вы подсказываете - имеет месту быть, если вам нужна такая логика.

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

хотя может, я его не правильно понял. Раз молчит - значит разобрался!

 
Доброго дня, всех с крещением. Мужики помогите пожалуйста доделать индикатор. пытался сам методом тыка добавить ещё две дополнительные линии, при компеляции ошибок ноль а индикатор перестал отображаться на графике. И ещё пытался добавить сужение или расширение между линиями в параметре Shift когда стоит ноль всё нормально когда ставишь 1 индикатор начинает зависать а затем линии расширяются , можно сделать чтобы в параметр отвечающий за расширение между линиями можно было вводить десятичные числа через запятую например- 0,78 . Заранее благодарен.
Файлы:
 
Здравствуйте многоуважаемые програмисты. Не могли бы вы написать советник или лучше индикатор для МТ4 ? Надо что бы он находил две свечи обязательно которые идут друг за другом с одинаковым High или Low. И еще если можно прикрепить алерт со звуковым сигналом и выходом сообщения на экран монитора с какой валютной пары пришел сигнал. Большое спасибо. 
Файлы:
41.png  218 kb
44.png  194 kb
 
acya13 #:
Здравствуйте многоуважаемые програмисты. Не могли бы вы написать советник или лучше индикатор для МТ4 ? Надо что бы он находил две свечи обязательно которые идут друг за другом с одинаковым High или Low. И еще если можно прикрепить алерт со звуковым сигналом и выходом сообщения на экран монитора с какой валютной пары пришел сигнал. Большое спасибо. 

Здравствуйте. Индикатор будет в каждый инструмент отдельно устанавливаться? Или в параметрах будет задаваться список валютных пар для мониторинга?

И по ТФ вопрос. Он фиксированно будет задаваться в настройках?

 
Здравствуйте.  Если можно , то да, желательно что бы в  каждый инструмент отдельно устанавливался. Не очень поняла второй вопрос. Если Вы имеете ввиду делать ли настройки индикатора, то если будет по системе то настроек не надо. А так как Вам проще так и делайте.
 
Добрый день. Можно написать советника, который бы при настраиваемой просадке отключал автоторговлю в терминале MT4 для всех торгуемых пар? Спасибо.
 
gorbenko85 #:
Добрый день. Можно написать советника, который бы при настраиваемой просадке отключал автоторговлю в терминале MT4 для всех торгуемых пар? Спасибо.

вот - но проще в вашем эксперте добавить  -     ExpertRemove();

функция(нажатие клавиш) взята с этого кода https://www.mql5.com/ru/code/8567

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

что бы работало нужно разрешить .dll

Снимок экрана 2022-02-07 105001

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

нет, лучше  не разрешать  .dll -  а разрешить в настройках эксперта  .dll и Разрешить советнику торговать

Снимок экрана 2022-02-07 105956

//+------------------------------------------------------------------+
//|                                                    Stop Avto.mq4 |
//|                        Copyright 2021, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//----
#include <WinUser32.mqh>

#define PAUSE 10
#define VK_MENU 0x12 //ALT key
#define VK_CONTROL 0x11 //CTRL key
//----
input double InpSLossAll = 1000000; // ALL Stop Loss --> (In currency the amount)
//---
int     CtrlAlt=0; // 0 - Ctrl, 1 - Alt
string  Key="E";   // Key
//---
double PROFIT_CLOSE=0.00;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   PROFIT_CLOSE=AccountInfoDouble(ACCOUNT_PROFIT);
//---
   if(PROFIT_CLOSE<=-InpSLossAll)
     {
      VK_XXXX(CtrlAlt,Key);
      ExpertRemove();
      PlaySound("expert.wav");
     }
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void VK_XXXX(int ctrlalts,string keys)
  {
   int FirstKey=VK_CONTROL;
   if(ctrlalts==1)
      FirstKey=VK_MENU;
   int SecondKey=StringGetChar(keys,0);
   keybd_event(FirstKey,0,0,0);
   Sleep(PAUSE);
   keybd_event(SecondKey,0,0,0);
   Sleep(PAUSE);
   keybd_event(SecondKey,0,2,0);
   Sleep(PAUSE);
   keybd_event(FirstKey,0,2,0);
  }
//+------------------------------------------------------------------+

ind_HotKeys_v1
ind_HotKeys_v1
  • www.mql5.com
Пример автоматического запуска скрипта при смене таймфрейма или символа