RSI EA
Похожие материалы по тегам
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «rsi_ea (3).mq4» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
О программе
RSI EA — торговый советник для платформы MetaTrader 4, который использует индикатор RSI для анализа ценовых данных. Советник отслеживает значения RSI на таймфреймах M1 и M5 и совершает торговые операции на основании полученных сигналов.
Советник поддерживает открытие и закрытие позиций как в направлении покупки, так и продажи. Доступна функция автоматического закрытия позиций по сигналу индикатора. Размер лота может рассчитываться автоматически на основе заданного процента риска от баланса счёта или устанавливаться вручную.
Реализованы механизмы фиксированного стоп-лосса, тейк-профита и трейлинг-стопа. Позиции идентифицируются с помощью магического числа и пользовательского комментария, что позволяет советнику корректно работать одновременно с другими экспертами на счёте.
Настройки программы
| Настройка | Описание |
|---|---|
| OpenBUY | Открытие покупки — Переключатель разрешения на открытие позиций покупки. |
| OpenSELL | Открытие продажи — Переключатель разрешения на открытие позиций продажи. |
| CloseBySignal | Закрытие по сигналу — Переключатель автоматического закрытия позиций по сигналу индикатора RSI. |
| StopLoss | Стоп-лосс — Значение стоп-лосса в пунктах. При значении 0 стоп-лосс не устанавливается. |
| TakeProfit | Тейк-профит — Значение тейк-профита в пунктах. При значении 0 тейк-профит не устанавливается. |
| TrailingStop | Трейлинг-стоп — Значение трейлинг-стопа в пунктах. При значении 0 трейлинг-стоп не используется. |
| RSIperiod | Период RSI — Период расчёта индикатора RSI. |
| BuyLevel | Уровень покупки — Пороговое значение индикатора RSI для открытия позиции покупки. |
| SellLevel | Уровень продажи — Пороговое значение индикатора RSI для открытия позиции продажи. |
| AutoLot | Автоматический лот — Переключатель автоматического расчёта размера лота. При включении лот вычисляется на основе процента риска от баланса счёта; при отключении используется фиксированное значение ManualLots. |
| Risk | Риск — Процент риска от баланса счёта, используемый при автоматическом расчёте размера лота. |
| ManualLots | Ручной лот — Фиксированный размер лота, используемый при отключённом автоматическом расчёте. |
| MagicNumber | Магическое число — Магическое число, используемое для идентификации позиций, открытых данным советником. |
| Koment | Комментарий — Пользовательский комментарий, присваиваемый каждой торговой операции для идентификации позиций советника. |
| Slippage | Проскальзывание — Допустимое отклонение цены исполнения от запрашиваемой цены в пунктах. |
Поиск по коду файла
#property version "1.00"
#property strict
input bool OpenBUY=True;
input bool OpenSELL=True;
input bool CloseBySignal=True;
input double StopLoss=0;
input double TakeProfit=0;
input double TrailingStop=0;
input int RSIperiod=14;
input double BuyLevel=30;
input double SellLevel=70;
input bool AutoLot=True;
input double Risk=10;
input double ManualLots=0.1;
input int MagicNumber=123;
input string Koment="RSIea";
input int Slippage=10;
int OrderBuy,OrderSell;
int ticket;
int LotDigits;
double Trail,iTrailingStop;
int init()
{
// код доступен только после оплаты
}
int deinit()
{
return(0);
}
int start()
{
// код доступен только после оплаты
}
double stoplevel=MarketInfo(Symbol(),MODE_STOPLEVEL);
OrderBuy=0;
OrderSell=0;
for(int cnt=0; cnt<OrdersTotal(); cnt++)
{
if(OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber && OrderComment()==Koment)
{
if(OrderType()==OP_BUY) OrderBuy++;
if(OrderType()==OP_SELL) OrderSell++;
if(TrailingStop>0)
{
iTrailingStop=TrailingStop;
if(TrailingStop<stoplevel) iTrailingStop=stoplevel;
Trail=iTrailingStop*Point;
double tsbuy=NormalizeDouble(Bid-Trail,Digits);
double tssell=NormalizeDouble(Ask+Trail,Digits);
if(OrderType()==OP_BUY && Bid-OrderOpenPrice()>Trail && Bid-OrderStopLoss()>Trail)
{
ticket=OrderModify(OrderTicket(),OrderOpenPrice(),tsbuy,OrderTakeProfit(),0,Blue);
}
if(OrderType()==OP_SELL && OrderOpenPrice()-Ask>Trail && (OrderStopLoss()-Ask>Trail || OrderStopLoss()==0))
{
ticket=OrderModify(OrderTicket(),OrderOpenPrice(),tssell,OrderTakeProfit(),0,Blue);
}
}
}
}
double rsi=iRSI(Symbol(),PERIOD_M1,RSIperiod,PRICE_CLOSE,0);
double rsi1=iRSI(Symbol(),PERIOD_M1,RSIperiod,PRICE_CLOSE,1);
double rsi2=iRSI(Symbol(),PERIOD_M5,RSIperiod,PRICE_CLOSE,0);
double rsi3=iRSI(Symbol(),PERIOD_M5,RSIperiod,PRICE_CLOSE,1);
if(OpenSELL && OrderSell<1 && rsi<SellLevel && rsi2<SellLevel && rsi1>SellLevel && rsi3>SellLevel) OPSELL();
if(OpenBUY && OrderBuy<1 && rsi>BuyLeПоказано первые 50% кода (символов: 3632)
Открыть по тарифу
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
Разовая покупка файла
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.