semilong.mq4
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «semilong.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный файл представляет собой торговый советник для платформы MetaTrader 4. Советник осуществляет открытие и управление торговыми позициями на рынке, используя встроенные торговые средства MetaTrader 4.
Советник позволяет настраивать уровни Stop Loss и Take Profit в пунктах, а также включает функцию трейлинг-стоп для автоматического перемещения защитных уровней по ходу движения цены. Доступен ручной и автоматический расчёт размера лота.
Автоматический расчёт лота основан на свободных средствах счёта с возможностью уменьшения размера позиции при серии убытков. Советник фильтрует ордера по магическому номеру и символу торгового инструмента, а также проверяет достаточность свободных средств перед открытием сделки.
Советник работает в рамках обработчика тиков MetaTrader 4 и использует стандартные торговые функции платформы для отправки и модификации ордеров.
Настройки программы
| Настройка | Описание |
|---|---|
| Profit | Размер Take Profit в пунктах. Задаёт расстояние уровня фиксации прибыли от цены открытия позиции. |
| Loss | Размер Stop Loss в пунктах. Задаёт расстояние защитного уровня от цены открытия позиции. |
| Shift1 | Сдвиг бара для сравнения текущей цены с ценой закрытия при определении условий входа. |
| Move1 | Пороговое значение движения цены для определения условий входа в позицию. |
| Shift2 | Второй сдвиг бара для сравнения цен закрытия при определении условий входа. |
| Move2 | Второе пороговое значение движения цены для определения условий входа в позицию. |
| Decr | Параметр уменьшения лота при серии убытков. Определяет величину снижения рассчитанного лота за каждый убыточный ордер в истории. |
| Lots | Фиксированный начальный размер лота. Используется при отключённом автоматическом расчёте или как минимальное значение лота. |
| Trailing | Расстояние трейлинг-стопа в пунктах. При значении больше нуля активируется автоматическое перемещение защитного уровня по ходу движения цены. |
| Autolot | Переключатель автоматического расчёта размера лота. При включении лот рассчитывается на основе свободных средств счёта; при выключении используется фиксированное значение параметра Lots. |
| AutoMrgDiv | Делитель свободных средств для автоматического расчёта размера лота. Используется при вычислении лота на основе доступного маржинального капитала счёта. |
Поиск по коду файла
extern int Profit=120;
extern int Loss=60;
extern int Shift1=100;
extern int Move1=60;
extern int Shift2=10;
extern int Move2=30;
extern int Decr=14;
extern double Lots=1;
extern int Trailing=0;
extern bool Autolot=true;
extern int AutoMrgDiv=7;
int Magic=1915;
int spr;
int tp,sl,d;
bool isOrder,buy,sell;
int init()
{
// код доступен только после оплаты
}
int deinit()
{
return(0);
}
int start()
{
// код доступен только после оплаты
}
int i;
if (IsTradeAllowed()) isOrder=true;
for(i=0; i<=OrdersTotal();i++) {
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (OrderMagicNumber()==Magic && OrderSymbol()==Symbol() ) isOrder=false;
}
buy=false;
sell=false;
if (Bid-Close[Shift1]<-Move1*Point && Close[Shift1]-Close[Shift1+Shift2]>Move2*Point) buy=true;
if (Bid-Close[Shift1]>Move1*Point && Close[Shift1]-Close[Shift1+Shift2]<-Move2*Point) sell=true;
if (AccountFreeMargin()<GetLots()*2000) isOrder=false;
if (isOrder && buy) {OrderSend(Symbol(),OP_BUY,GetLots(),Ask,3,(Bid-(Loss)*Point)*sl,(Ask+(Profit+spr)*Point)*tp,"",Magic,0,FireBrick); d=Day();}
if (isOrder && sell) {OrderSend(Symbol(),OP_SELL,GetLots(),Bid,3Показано первые 50% кода (символов: 2142)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.