Join the Dots
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «join the dots-v1.2.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Join the Dots — торговый советник для MetaTrader 4, который открывает сделки на покупку и продажу на основе совпадения сигналов трёх пользовательских индикаторов: Mega trend, Trend Histo и Swing_ZZ. Советник определяет направление тренда по буферным значениям индикаторов и входит в позицию при подтверждении всеми тремя индикаторами одного направления. Для ордера BUY требуется восходящая динамика Mega trend и Trend Histo при наличии разворота Swing_ZZ; для SELL — аналогичная нисходящая конфигурация.
Советник поддерживает управление рисками через параметры стоп-лосса и тейк-профита, задаваемые в пунктах. Встроена система магических номеров, привязывающая ордера к конкретному идентификатору советника, символу и таймфрейму, что позволяет корректно отслеживать и закрывать только свои позиции. Параметр CloseOrdersOnNextDot обеспечивает автоматическое закрытие открытых ордеров при появлении противоположного сигнала от индикатора Swing_ZZ.
В качестве торгового API используется стандартная функция OrderSend с поддержкой проскальзывания и комментариев к ордерам. Советник проверяет отсутствие текущих позиций перед открытием нового ордера, предотвращая наращивание объёма в одном направлении. Обработка событий происходит в функции start(), вызываемой при каждом обновлении цены на сервере.
Настройки программы
| Настройка | Описание |
|---|---|
| ExpertID | Целочисленный идентификатор советника, используемый в качестве базы для формирования уникального магического номера ордера совместно с кодом символа и таймфрейма. |
| TakeProfit | Расстояние тейк-профита в пунктах, рассчитываемое от текущей цены и передаваемое как уровень TakeProfit в OrderSend при открытии ордера. |
| StopLoss | Расстояние стоп-лосса в пунктах, рассчитываемое от текущей цены Bid/Ask и передаваемое как уровень StopLoss в OrderSend при условии useStopLoss = true. |
| LotSize | Размер лота (объём торговой позиции), передаваемый в функцию OrderSend при открытии ордера. |
| useStopLoss | Логический переключатель, определяющий, устанавливать ли уровень стоп-лосса при открытии ордера. При значении false стоп-лосс не задаётся (передаётся 0). |
| CloseOrdersOnNextDot | Переключатель, управляющий автоматическим закрытием открытых позиций при появлении противоположного сигнала от индикатора Swing_ZZ. При значении true советник закрывает лонги при сигнале swingzz_up и шорты при сигнале swingzz_down. |
| Slippage | Допустимое проскальзывание цены в пунктах, передаваемое в функцию OrderSend при исполнении ордеров. |
| BuyComment | Текстовый комментарий, добавляемый к ордерам на покупку при их открытии через OrderSend. |
| SellComment | Текстовый комментарий, добавляемый к ордерам на продажу при их открытии через OrderSend. |
Поиск по коду файла
#include <stdlib.mqh>
int MagicNumber = 0;
int ticket = 0;
double Price[2];
double buy_sl, sell_sl;
int giSlippage;
extern int ExpertID = 994488;
extern int TakeProfit = 300;
extern double StopLoss = 50;
extern double LotSize = 0.1;
extern bool useStopLoss = true;
extern bool CloseOrdersOnNextDot = true;
extern int Slippage = 5;
color ExitLongColor = CLR_NONE;
color ExitShortColor = CLR_NONE;
extern string BuyComment = "Join the Dots BUY";
extern string SellComment = "Join the Dots SELL";
int init()
{
// код доступен только после оплаты
}
int deinit()
{
return(0);
}
int start()
{
// код доступен только после оплаты
}
int MakeMagicNumber( int ExpertID, bool TimeSpecific )
{
int SymbolCode = 0;
int PeriodCode = 0;
int MagicNumber = 0;
if( Symbol() == "AUDCAD" || Symbol() == "AUDCADm" ) { SymbolCode = 1000; }
else if( Symbol() == "AUDJPY" || Symbol() == "AUDJPYm" ) { SymbolCodПоказано первые 50% кода (символов: 5357)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.