Написать бота для проставления автоматических ставок в метатрейдер 5

Spezifikation


Задача 
 
1)      Нужно написать бота, который умеет выставлять ордера и закрывать их в Метатрейдере 
 
2)      Требования к боту: 
 
•       Python script (файл .py) 
 
•       Программа должна работать в фоновом режиме(можно свернуть, чтобы не мешала) 
 
•       Кол-во валютных пар (неограниченно) 
 
•       Кол-во одновременно запущенных сделок(неограниченно) 
 
•       Бот(программа) должна быть написана на Python 
 
•       Сделки, которые бот должен открыть и закрыть берутся из файла из текущей директории из файла pairs.csv (файл обновляется другой программой, в ней появляются новые пары)(файл может обновляться с периодичностью от нескольких секунд до нескольких минут) 
 
•       Важно! Добавить возможность вручную закрывать сделки в Метатрейдер (бот не должен ломаться) 
 
Логика выставление сделок: 
 
1) Бот считывает валютные пары из файла pairs.csv 
 
2) По каждой валютной паре бот должен учесть спред(можно задать в виде словаря например: 
 
{EURUSDrfd:14, EURGBPrfd:20}. Спред задается в базисных пунктах. 
 
3) Если цена валютной пары сдвинулась на размер спреда (плюс 20 пунктов) в противоположном направлении от типа ордера, то по этой валютной паре бот должен открыть сделку 
 
(например бот считал строку из файла pairs.csv 
 
Валютная пара: EURUSDrfd 
 
Время открытия: 04.10.2023.11:31:00 
 
Время закрытия: 04.10.2023.11:35:00 
 
Тип ордера:BUY 
 
Фиксируется текущая цена в 11:31:00 по валютной паре EURUSDrfd 
 
Бот ожидает, когда текущая цена снизится на размер спреда (плюс 20 пунктов) от фиксированной 
 
Если условие выполнено (цена сдвинулась на размер спреда в противоположном направлении) и времени до закрытия составляет больше или равно 2 минуты, то сделка открывается. Для валютной пары EURUSDrfd из примера крайняя точка входа 11:33:00. 
 
В противном случае (если условие спреда не выполнилось) сделка не открывается. 
 
В файле pairs.csv могут быть несколько сделок с одной и той же валютной парой, но с разным временем входа и выхода из сделки. В этом случае бот заходит по первой сделке и пока не закончится текущая сделка, по данной валютной паре бот не заходит в новую сделку по данной валютной паре.
 
Бот должен записывать в файл logs.csv информацию о сделках (так же как и в pair.csv + дополнительное поле о сделке(выполнилось или нет)) 
 
Структура файла pairs.csv: 
 
symbol,EnterDate,ExitDate,TP,SL,volume,orderType 
 
EURUSDrfd,04.10.2023.11:31:00,04.10.2023.11:35:00,100,100,0.01,BUY 
 
  
 
  
 
*Описание полей 
 
symbol:Валютная пара 
 
EnterDate:Точка входа 
 
ExitDate:Точка выхода 
 
TP: Take Profit  - возможность задавать вручную на различные валютные пары свой ТP. То есть для одной валютной пары 50 пунктов а для другой 100 пунктов.
 
SL:Stop Loss возможность задавать вручную на различные валютные пары свой ТP. То есть для одной валютной пары 50 пунктов а для другой 100 пунктов.
 
volume: размер позиции(в лотах) - тут немного сложно объяснить - попробую подробно. Бот зашел в ставку и скажем по итогу сделки ушел в минус. В этом случае следующая ставка независимо от того какая валютная пара - бот удваивает ставку.
 
orderType:Тип ордера (BUY или SELL)

Bewerbungen

1
Entwickler 1
Bewertung
(251)
Projekte
402
38%
Schlichtung
82
41% / 20%
Frist nicht eingehalten
70
17%
Arbeitet
2
Entwickler 2
Bewertung
(142)
Projekte
280
42%
Schlichtung
18
61% / 6%
Frist nicht eingehalten
29
10%
Frei
3
Entwickler 3
Bewertung
(52)
Projekte
96
24%
Schlichtung
9
22% / 22%
Frist nicht eingehalten
12
13%
Arbeitet
Ähnliche Aufträge
Советник на основе буферных сигналов индикатора с мартингейлом в обе стороны. Виртуальные (не видимые брокеру) уровни СЛ, ТП. Дублирование всех на строеек на скрываемую панель на графике. полное описание 1. вход по сигналам, по тому который в настройках 1,2,3(одинаковых в одну сторону подряд) и т.д.указан 3 сиг.-первые 1,2 -пропускает. 2. на последующих сигналах по тренду-
Индикатор оригинала не перерисовывается, соответственно когда будете вносить изменения в алгоритме индикатора, тоже не должен перерисовыватся. Необходимо найти в алгоритме индикатора, где есть условия, при которой индикатор выдает уведомления. Нужно посмотреть с расчетом на одну свечу назад на уже закрытой свече на каких условиях находится когда свеча открывалась, и на основание этого создать новое условие, чтобы

Projektdetails

Budget
200 - 400 USD
Für die Entwickler
180 - 360 USD
Ausführungsfristen
bis 14 Tag(e)