0 - sl_tp_be_all_fx_order_types v2.mq4
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «0 - sl_tp_be_all_fx_order_types v2.mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
Данный советник для MetaTrader 4 автоматически выставляет стоп-лоссы и тейк-профиты на открытых ордерах при каждом тике. Он работает с рыночными ордерами (BUY, SELL) и отложенными ордерами (BUYSTOP, SELLSTOP, BUYLIMIT, SELLLIMIT), устанавливая уровни на основе заданных расстояний в пунктах.
Если у ордера ещё не заданы стоп-лосс и тейк-профит, советник рассчитывает их по параметрам StopLoss и TakeProfit: для покупательских ордеров стоп-лосс размещается ниже цены открытия, а тейк-профит — выше; для продавательских — наоборот.
При достижении цены заданного расстояния в пунктах от цены открытия ордер автоматически переводится в безубыточную зону: стоп-лосс перемещается на уровень цены открытия. Если параметр TakeProfit также задан, тейк-профит устанавливается одновременно с переводом в безубыточную зону.
В начале каждого тика советник проверяет включённость автоторговли и разрешение на живую торговлю, при отсутствии которых выводит соответствующее предупреждение.
Настройки программы
| Настройка | Описание |
|---|---|
| StopLoss | Расстояние в пунктах для установки стоп-лосса от цены открытия ордера. Для покупательских ордеров стоп-лосс размещается ниже цены открытия, для продавательских — выше. Работает только для ордеров без заданных стоп-лосса и тейк-профита. |
| TakeProfit | Расстояние в пунктах для установки тейк-профита от цены открытия ордера. Для покупательских ордеров тейк-профит размещается выше цены открытия, для продавательских — ниже. Работает только для ордеров без заданных стоп-лосса и тейк-профита. |
| Break_Even_profit_distance | Расстояние в пунктах от цены открытия ордера, при достижении которого ордер переводится в безубыточную зону (стоп-лосс перемещается на цену открытия). Активно только при значении больше нуля. |
Поиск по коду файла
#property version "1.00"
#property strict
input int StopLoss=0;
input int TakeProfit=0;
input int Break_Even_profit_distance = 0;
int OnInit()
{
// код доступен только после оплаты
}
void OnDeinit(const int reason)
{
}
void OnTick()
{
// код доступен только после оплаты
}
if(!IsExpertEnabled())
{
MessageBox("You need to enable AutoTrading! "+" Check your Settings!");
return;
}
if(!IsTradeAllowed())
{
MessageBox("You need to Allow Live Trading!" + "\n" +
"Check EA Common tab -> Live Trading -> Allow live trading"); Sleep(1000);
return;
}
double SL,TP;
int i,Total;
Total=OrdersTotal();
if(Total>0)
{
for(i=Total-1; i>=0; i--)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)==true)
{
if(OrderSymbol()==Symbol() && (OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT) && OrderStopLoss()==0 && OrderTakeProfit()==0)
{
if(StopLoss>0)SL=OrderOpenPrice()+StopLoss*Point;else SL=0;
if(TakeProfit>0)TP=OrderOpenPrice()-TakeProfit*Point;elsПоказано первые 50% кода (символов: 2243)