Работа завершена
Время выполнения 1 день
Отзыв от заказчика
Alles TipTop
Отзыв от исполнителя
Всё прошло успешно! Я рад сотрудничеству!
Техническое задание
Мне нужно передавать из одного терминала МТ5 в другой, количество открытых позиций.
На пример, из первого при помощи индикаторы, через файл, и потом во втором терминале, функцией блоком в советнике, читать эти данные.
Привожу пример индикатора. Задача или исправить этот индикатор, или предлагать другой и другие решения. Спасибо.
#property indicator_chart_window #property indicator_buffers 1 #property indicator_plots 1 //----- Indicator Parameters //+------------------------------------------------------------------+ input string SubFolder = "MetaTrader 5"; //+------------------------------------------------------------------+ int Handle; //--- int BearPositions; int BullPositions; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() {return(0);} //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ void OnDeinit(const int reason) { Comment(""); Handle=FileOpen(SubFolder+"\\MQL5\\Files\\"+Symbol()+".csv",FILE_WRITE); Print(Symbol()+".csv"+" File Created: ",(bool)FileIsExist(SubFolder+"\\MQL5\\Files\\"+Symbol()+".csv")); FileClose(Handle); Print(Symbol()+".csv"+" File Deleted: ",(bool) FileDelete(SubFolder+"\\MQL5\\Files\\"+Symbol()+".csv")); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, // number of bars in history at the current tick const int prev_calculated,// number of bars calculated at previous call const datetime &time[], const double &open[], const double& high[], // price array of maximums of price for the indicator calculation const double& low[], // price array of minimums of price for the indicator calculation const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { //----- TotalPositions(); //----- Handle=FileOpen(SubFolder+"\\MQL5\\Files\\"+Symbol()+".csv",FILE_WRITE|FILE_SHARE_READ|FILE_ANSI,';'); if(Handle!=INVALID_HANDLE) { FileWrite(Handle,BullPositions,BearPositions); FileClose(Handle); Comment("\n","\n","\n","\n","\n","\n","\n","\n","\n","\n",Symbol(),": ","Bull: ",(string)BullPositions,", Bear: ",(string)BearPositions); //"\n","Ask: ",NormalizeDouble(SymbolInfoDouble(Symbol(),SYMBOL_ASK),_Digits), //"\n","Bid : ",NormalizeDouble(SymbolInfoDouble(Symbol(),SYMBOL_BID),_Digits)); } //----- else Print("File open Failed: "+SubFolder+"\\"+Symbol()+".csv, error",GetLastError()); //----- Done return(rates_total); } //+------------------------------------------------------------------+ //| Bear Positions Counter | //+------------------------------------------------------------------+ void TotalPositions() { //----- int Cnt=0; //----- BearPositions=0; BullPositions = 0; //----- for(Cnt=PositionsTotal()-1;Cnt>=0;Cnt--) { if(PositionGetSymbol(Cnt)==_Symbol) { if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_SELL && PositionGetDouble(POSITION_SL) == NULL) BearPositions++; if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_BUY && PositionGetDouble(POSITION_SL) == NULL) BullPositions++; } } return; } //+------------------------------------------------------------------+
Откликнулись
1
Оценка
Проекты
78
27%
Арбитраж
13
31%
/
62%
Просрочено
15
19%
Свободен
Опубликовал: 4 примера
2
Оценка
Проекты
53
36%
Арбитраж
0
Просрочено
0
Свободен
3
Оценка
Проекты
642
40%
Арбитраж
2
100%
/
0%
Просрочено
1
0%
Свободен
Опубликовал: 9 примеров
4
Оценка
Проекты
154
29%
Арбитраж
1
100%
/
0%
Просрочено
27
18%
Свободен
5
Оценка
Проекты
228
19%
Арбитраж
20
40%
/
20%
Просрочено
0
Занят
6
Оценка
Проекты
1
0%
Арбитраж
0
Просрочено
0
Свободен
7
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
8
Оценка
Проекты
643
26%
Арбитраж
92
72%
/
14%
Просрочено
12
2%
Работает
Опубликовал: 1 пример
Похожие заказы
Добавить alert Flexible Fractal mql5
30 - 50 USD
Кто может добавить alert при пробитии последнего фрактала. из 3 баров. Flexible Fractal c notification с ценой и валютной парой / и чтоб звучало 1 раз. // Как и в стандартном индикаторе текущий бар сравнивается с барами стоящими справа на графике строго - текущий бар должен быть выше (для верхнего фрактала) или ниже (для нижнего фрактала), если же он равен - тогда фрактал не рисуется. А вот сравнение текущего бара с
Нужен программист для написания советника.
100 - 300 USD
Принцип торговли. Торговля происходит от уровней в автоматическом режиме, без участия человека при открытии и закрытии сделок. Первую сделку он открывает при получении сигнала с применением VSA анализа. Сигнал по объемам поступает с биржи СМЕ. Если первая торговая позиция закрывается в плюс, то робот открывает новую сделку. Если котировки пошли в обратную от открытой позиции сторону, то робот включает свой алгоритм
1. Загальна логіка Треба створити ЕА для MetaTrader 5 на основі індикатора Zig Zag (параметри індикатора стандартні: Depth, Deviation, Backstep) та рівнів Фібоначчі. Детально логіка входу описана в додатку до ТЗ. 2. Відкриття сету ордерів ЕА відкриває сет відкладених ордерів (кількість ордерів від 1 до 5) Для кожного ордеру задається - рівень входу (значення рівня Фібоначчі) - рівень SL
Советник
200+ USD
Советник по мартингейлу на хеджевых счетах на МТ5 Торгуем рыночными ордерами. Торговая панель средней сложности. Более конкретное ТЗ вышлю всем заинтересовавшимся. Оплата и сроки обсуждаемы. Нужен советник по индикатору Во вложении ТЗ. все значения переменные
Информация о проекте
Бюджет
34+ USD
Сроки выполнения
до 8 дн.