← К каталогу
Исходный код · ID 391

MyLuckyPro

myluckyprov05p.mq4
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

MyLuckyPro V.0.5p — торговый советник для MetaTrader 4, автоматизирующий открытие и управление позициями на основании фильтра торгового времени и скользящей средней. Советник анализирует текущее соотношение цены закрытия к простой скользящей средней (SMA) заданного периода для формирования сигналов на покупку или продажу. При достижении заданного уровня доходности или баланса робот может принудительно закрыть все позиции и прекратить торговлю.

В качестве параметров риска поддерживаются два режима: ручной ввод лота или расчёт размера позиции в процентах от свободной маржи. Доступны отдельные уровни стоп-лосса для торгового и неторгового времени, фиксированный или скрытый тейк-профит, а также ограничения на количество одновременных сделок и сделок в бар. Встроенная функция AutoStop позволяет остановить открытие новых позиций, сохранив существующие.

Советник работает в рамках заданного временного окна (OpenHour–CloseHour), при выходе за его пределы закрывает все открытые позиции по стоп-лоссу. Все позиции идентифицируются магическим номером, что позволяет роботу управлять только своими ордерами. Параметр Slippage задаёт допустимое отклонение цены исполнения.

Настройки программы

НастройкаОписание
Balance_Info Информационный текстовый параметр с описанием условия достижения целевого баланса и остановки торговли.
TargetBalance Целевой уровень баланса/эквити, при достижении которого советник прекращает торговлю и закрывает все позиции.
TargetPercentage Процент прироста эквити от текущего значения, используемый для автоматического расчёта целевого уровня баланса.
AutoStop_Info Информационный текстовый параметр с описанием функции AutoStop.
AutoStop Переключатель автоматической остановки. При значении true советник закрывает все позиции и прекращает открытие новых, старые позиции остаются открытыми.
Time_Info Информационный текстовый параметр с описанием параметров торгового времени.
OpenHour Час начала торговой сессии в серверном времени. Торговля начинается при достижении этого часа.
CloseHour Час завершения торговой сессии в серверном времени. Позиции закрываются при достижении этого часа.
MM_Info Информационный текстовый параметр с описанием режима управления рисками.
MM Переключатель режима управления рисками. При значении true размер позиции рассчитывается в процентах от свободной маржи по параметру Risk.
Risk Процент риска от свободной маржи, используемый для расчёта размера позиции при активном режиме управления рисками (MM=true).
Lots_Info Информационный текстовый параметр с описанием ручного задания размера лота.
Lots Фиксированный размер лота, используемый при отключённом режиме управления рисками (MM=false).
MaxLots Максимально допустимый размер лота при расчёте размера позиции.
MinLots Минимально допустимый размер лота при расчёте размера позиции.
LotsDigit Число знаков после запятой для размера лота. При значении 0 берётся из системных настроек.
Slippage Допустимое отклонение цены исполнения в пунктах при отправке рыночных ордеров.
Trade_Info Информационный текстовый параметр с описанием параметра тейк-профита.
TP Тейк-профит в пунктах, устанавливаемый при открытии позиции, если скрытый тейк-профит отключён (HiddenTP=false).
SL1_Info Информационный текстовый параметр с описанием стоп-лосса для неторгового времени.
SL1 Первый уровень стоп-лосса в пунктах, применяемый вне торгового времени.
SL2_Info Информационный текстовый параметр с описанием стоп-лосса для торгового времени.
SL2 Второй уровень стоп-лосса в пунктах, применяемый во время торговой сессии.
HiddenTP_Info Информационный текстовый параметр с описанием функции скрытого тейк-профита.
HiddenTP Переключатель скрытого тейк-профита. При значении true тейк-профит не устанавливается при открытии позиции.
Filter_Info Информационный текстовый параметр с описанием фильтра для открытия позиций.
SignalFilter Фильтр минимального расстояния в пунктах между ценой и последней позицией для разрешения нового сигнала.
MaxTrades Максимальное общее количество одновременно открытых позиций советником.
MaxTradePerBar Максимальное количество сделок, которые могут быть открыты за один бар.
MaxTradePerPosition Максимальное количество одновременно открытых позиций одного направления.
IMA_PERIOD Период простой скользящей средней (SMA), используемой для формирования торговых сигналов.
Magic Магический номер для идентификации ордеров, управляемых данным советником.
Получить полный код

Поиск по коду файла

extern string  Balance_Info   = "Bila sudah tercapai ROBOT berhenti, INGAT JANGAN serakah";
extern double  TargetBalance  = 0;     
extern double  TargetPercentage = 41;     

extern string  AutoStop_Info   = "AutoStop=false, do not open new positions, old positions remain maintained";
extern bool    AutoStop        = false;     

extern  string  Time_Info   = "Jam Trading waktu Server";
extern  int     OpenHour    = 1; //19
extern  int     CloseHour   = 9;

extern  string  MM_Info   = "Kalau MM=true, isi risk berapa persen yg mau di pake.";
extern  bool    MM        = true;  // pake MM
extern  int     Risk      = 7;     // persentase MM

extern  string  Lots_Info = "Kalau MM=false, isi Lots yg mau di pake.";
extern  double  Lots      = 1;     // kalo 'MM=false' pake lot

string  MaxLots_Info = "Maximum and Minimum Lot, cannot be more than this.";
extern  double  MaxLots     = 100; 
extern  double  MinLots     = 0.1;

string  LotsDigit_Info = "LotsDigit=0, maka akan ambil dari system";
extern  int     LotsDigit   = 1;
extern  int     Slippage    = 3;

extern  string  Trade_Info = "TP=TakeProfit, disarankan sedikit saja";
extern  int     TP         = 5;     // jangan besar-besar  

extern  string  SL1_Info   = "SL1=StopLoss bukan jam trading";
extern  int     SL1        = 24; //19   // SL kalau jam close

extern  string  SL2_Info   = "SL2=StopLoss jam trading";
extern  int     SL2        = 34; //31   // SL kalau jam trading

extern  string  HiddenTP_Info   = "Bila true, maka TP tidak di set";
extern  bool    HiddenTP        = true;

extern  string  Filter_Info       = "Filter untuk buka posisi";
extern  int     SignalFilter      = 5;
extern  int     MaxTrades         = 7;
extern  int     MaxTradePerBar    = 6;  //3
extern  int     MaxTradePerPosition = 6;
extern  int     IMA_PERIOD        = 15;
extern  int     Magic             = 11111;

int            TradePerBar = 0;

double         Last_BUY_OpenPrice        = 0;
double         Last_SELL_OpenPrice       = 0;
int            BarCount                  = -1;
bool           CountBalance              = false;

int init()
  {
      // код доступен только после оплаты
   }

int start()
{
      // код доступен только после оплаты
   } 

   if(AutoStop==true)
   {
      CloseAll(); 
      return(0);
   }   

   /*
   if(                 2 != 3 ||
      AccountNumber()==125082 || 
      AccountNumber()==127249 ||
      AccountNumber()==133825 ||
      AccountNumber()==120076 ||
      AccountNumber()==129224 ||
      AccountNumber()==133291 ||
      AccountNumber()==213470 ||
      AccountNumber()==130860 ||
      AccountNumber()==133422 ||
      AccountNumber()==215814 ||
      AccountNumber()==114433 ||
      AccountNumber()==192854 ||
      AccountNumber()==115207 ||
      AccountNumber()==125203 ||
      AccountNumber()==215387 ||
      AccountNumber()==7695   ||
      AccountNumber()==20277  ||
      AccountNumber()==127599 ||
      AccountNumber()==131187 || 
                         1 != 2)
   {
      if(Year()>2008 && Month()>3)
      {
         Comment("\nMyLuckyPro V.0.5p",
                 "\nSTOP TRADING....");
         return(0);
      }
   }
   else {
       if(IsDemo()==false)
       {
         Comment("\nMyLuckyPro V.0.5p",
                 "\nSTOP TRADING....",
                 "\n\nAccount = ", AccountNumber(), " tidak terdaftar..." );
         return(0);
       }
   }   

   if(IsOptimization()==true && !(AccountNumber()==125082 || AccountNumber()==127249))
   {
      Print("Sudahlah, nggak usah pake optimization, pake forward test aza bro..");
      return(0);
   }
   if(IsTesting()==true && !(AccountNumber()==125082 || AccountNumber()==127249))
   {
      Comment("\nMyLuckyPro V.0.5p",
              "\nSTOP TRADING....");
      Print("Sudahlah, nggak usah pake testing segala, pake forward test aza bro..");
      return(0);
   }
   */

   int BUY_OpenPosition     = 0;
   int SELL_OpenPosition    = 0;
   int TOTAL_OpenPosition   = 0;
   int Ticket               = -1;
   int cnt                  = 0;

   if (Tradetime() == 1)   
   {

      if(TargetPercentage>0)
      {
         if(CountBalance == false)
         {
            double x = AccountEquity() + (AccountEquity() * TargetPercentage / 100);
            if(TargetBalance < x) TargetBalance = x;
            CountBalance = true;
         }   
      } else CountBalance = true;

      if(CountBalance == true && TargetBalance>0 && AccountEquity() >= TargetBalance)
      {
         Comment("\nMyLuckyPro V.0.5p",
                 "\nSTOP TRADING....",
                 "\n\nTargetBalance = ", TargetBalance,
                 "\nAccountEquity = ", AccountEquity(),
                 "\n\nSELAMAT TARGET TELAH TERCAPAI...!",
                 "\nSEGERA WITHDRAW dan jangan LUPA BERAMAL..");			 

         ForceCloseAll(); 
         return(0);
      }

      Comment("\nMyLuckyPro V.0.5p",
              "\nLAGI TRADING...",
              "\n\nTargetBalance = ", TargetBalance,
              "\nAccountEquity = ", AccountEquity(),
              "\n\nMulai Trading Jam = ", OpenHour,
              "\nSelesai Trading Jam = ", CloseHour,
              "\nSekarang Jam = ", Hour()			 
            );

      for (cnt = 0; cnt < OrdersTotal(); cnt++) 
      {
         OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
         if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderCloseTime()==0) 
         {
            TOTAL_OpenPosition++;
            if (OrderType() == OP_BUY) 
            {
               BUY_OpenPosition++;
               Last_BUY_OpenPrice = OrderOp

Показано первые 50% кода (символов: 7653)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
765,30₽ ≈ $9.35