Robot BBMA_Reversal_Continuation

 //+------------------------------------------------------------------+

//|                                              BBMA_Reversal_Continuation |

//|                        Copyright 2024, MetaQuotes Software Corp. |

//|                                       http://www.metaquotes.net/ |

//+------------------------------------------------------------------+

#property strict


// Input parameters

input double Lots = 0.1;                   // Lot size

input int ReversalPeriod = 14;             // Period for reversal pattern detection

input int ContinuationPeriod = 14;         // Period for continuation pattern detection

input int BBand_Period = 20;               // Period for Bollinger Bands

input double BBand_Deviation = 2.0;        // Standard deviation for Bollinger Bands

input int TrailingStopPips = 50;           // Trailing stop in pips


// Indicator handles

int BBMA_Handle;

int BBand_Handle;


//+------------------------------------------------------------------+

//| Expert initialization function                                   |

//+------------------------------------------------------------------+

int OnInit()

  {

   // Initializing the BBMA indicator

   BBMA_Handle = iMA(NULL, 0, ReversalPeriod, 0, MODE_SMA, PRICE_CLOSE,0);

   if(BBMA_Handle == INVALID_HANDLE)

     {

      Print("Failed to initialize BBMA indicator! Error code:", GetLastError());

      return INIT_FAILED;

     }

   

   // Initializing the Bollinger Bands indicator

   BBand_Handle = iBands(NULL, 0, BBand_Period,20, BBand_Deviation, 2, PRICE_CLOSE,0);

   if(BBand_Handle == INVALID_HANDLE)

     {

      Print("Failed to initialize Bollinger Bands indicator! Error code:", GetLastError());

      return INIT_FAILED;

     }


   // Initialization succeeded

   Print("Initialization successful");

   return INIT_SUCCEEDED;

  }


//+------------------------------------------------------------------+

//| Expert deinitialization function                                 |

//+------------------------------------------------------------------+

void OnDeinit(const int reason)

  {

   // No need to release the indicator handle in MetaTrader 5

  }


//+------------------------------------------------------------------+

//| Expert tick function                                             |

//+------------------------------------------------------------------+

void OnTick()

  {

   // Calculate reversal pattern

   double reversalPattern = CalculatePattern(ReversalPeriod);

   // Calculate continuation pattern

   double continuationPattern = CalculatePattern(ContinuationPeriod);

   

   // Calculate Bollinger Bands values

   double upperBBand = iBands(NULL, 0, BBand_Period, BBand_Deviation, 0, PRICE_CLOSE, MODE_UPPER, 0);

   double lowerBBand = iBands(NULL, 0, BBand_Period, BBand_Deviation, 0, PRICE_CLOSE, MODE_LOWER, 0);

   double middleBBand = iBands(NULL, 0, BBand_Period, BBand_Deviation, 0, PRICE_CLOSE, MODE_MAIN, 0);


   Print("Reversal Pattern:", reversalPattern);

   Print("Continuation Pattern:", continuationPattern);

   Print("Upper Bollinger Band:", upperBBand);

   Print("Lower Bollinger Band:", lowerBBand);

   Print("Middle Bollinger Band:", middleBBand);


   // Check for reversal pattern

   if(reversalPattern > 0.0 && Close[0] > upperBBand)

     {

      // Open sell position

      double openPrice = SymbolInfoDouble(_Symbol, SYMBOL_ASK);

      ulong ticket = OrderSend(_Symbol, OP_SELL, Lots, openPrice, 3, 0, 0, "Sell Order", 0, TrailingStopPips * Point, clrRed);

      if(ticket > 0)

        {

         Print("Sell order opened at price:", openPrice);

        }

      else

        {

         Print("Failed to open sell order! Error code:", GetLastError());

        }

     }

   // Check for continuation pattern

   else if(continuationPattern > 0.0 && Close[0] < lowerBBand)

     {

      // Open buy position

      double openPrice = SymbolInfoDouble(_Symbol, SYMBOL_BID);

      ulong ticket = OrderSend(_Symbol, OP_BUY, Lots, openPrice, 3, 0, 0, "Buy Order", 0, TrailingStopPips * Point, clrGreen);

      if(ticket > 0)

        {

         Print("Buy order opened at price:", openPrice);

        }

      else

        {

         Print("Failed to open buy order! Error code:", GetLastError());

        }

     }

  }


//+------------------------------------------------------------------+

//| Function to calculate pattern based on given period              |

//+------------------------------------------------------------------+

double CalculatePattern(int period)

  {

   double maCurrent = iMA(NULL, 0, period, 0, MODE_SMA, PRICE_CLOSE,0);

   double maPrevious = iMA(NULL, 0, period, 1, MODE_SMA, PRICE_CLOSE,0);


   // Return 1 if current price is above the MA and previous price was below the MA (reversal pattern)

   if((Close[0] > maCurrent) && (Close[1] < maPrevious))

     {

      return 1.0;

     }

   // Return -1 if current price is below the MA and previous price was above the MA (continuation pattern)

   else if((Close[0] < maCurrent) && (Close[1] > maPrevious))

     {

      return -1.0;

     }

   else

     {

      return 0.0;

     }

  }


Tidak ada komentar:

Posting Komentar

PRDIKTO

Dasbor Analisis Saham BRIS - 18 Juni 2025

Dasbor Analisis Saham BRIS

Data Perdagangan & Analisis untuk 18 Juni 2025

Ringkasan Kinerja Harian

Berikut adalah ringkasan data perdagangan saham PT Bank Syariah Indonesia Tbk (BRIS) pada penutupan pasar tanggal 18 Juni 2025. Hari ini saham mengalami penurunan seiring dengan pelemahan IHSG secara umum.

Harga Penutupan

2.570

-2,65%

Tertinggi

2.640

Terendah

2.550

Volume

44,85 jt

Analisis Inti

Jelajahi berbagai aspek analisis saham BRIS, mulai dari kinerja fundamental perusahaan, pergerakan teknikal harga saham, hingga konteks strategis dan prospek sektor perbankan syariah. Gunakan tombol di bawah untuk berpindah antar-kategori analisis.

Pertumbuhan Pendapatan & Laba

BRIS menunjukkan pertumbuhan pendapatan dan laba bersih yang konsisten selama lima tahun terakhir, mencerminkan ekspansi bisnis yang solid di sektor perbankan syariah.

Perbandingan Valuasi (P/E & P/B)

Saham BRIS diperdagangkan pada valuasi premium dibandingkan rata-rata sektor finansial, menunjukkan ekspektasi pasar yang tinggi terhadap potensi pertumbuhannya di masa depan.

Prospek Valuasi Saham BRIS

Analisis valuasi menunjukkan gambaran yang kontras. Di satu sisi, model DCF konservatif menunjukkan nilai intrinsik yang lebih rendah. Di sisi lain, target harga rata-rata dari 11 analis menunjukkan potensi kenaikan yang signifikan, mencerminkan optimisme terhadap prospek pertumbuhan perusahaan.

Rekomendasi Investasi & Analisis Risiko

Berdasarkan analisis komprehensif, rekomendasi untuk saham BRIS adalah:

BELI (BUY)

Rekomendasi ini didasarkan pada fundamental perusahaan yang kuat, posisi strategis di sektor yang bertumbuh, dan sentimen positif dari analis, yang secara kolektif melampaui risiko volatilitas jangka pendek.

Peluang & Justifikasi Beli

  • Fundamental Kuat: Pertumbuhan pendapatan, laba, dan aset yang konsisten melampaui rata-rata industri.
  • Pemimpin Pasar Syariah: Posisi dominan di sektor perbankan syariah yang sedang tumbuh pesat dengan dukungan pemerintah.
  • Sentimen Analis Positif: Konsensus "Strong Buy" dengan target harga rata-rata yang menyiratkan potensi kenaikan >40%.
  • Titik Masuk Menarik: Penurunan harga akibat faktor makro bisa menjadi peluang beli sebelum potensi rebound teknis.

⚠️ Risiko yang Perlu Diperhatikan

  • Transisi Akuisisi: Ketidakpastian terkait akuisisi Danantara dapat menyebabkan volatilitas jangka pendek.
  • Valuasi Premium: Harga saham bergantung pada realisasi ekspektasi pertumbuhan yang tinggi. Kegagalan memenuhi ekspektasi dapat memicu koreksi.
  • Sentimen Pasar Makro: Kebijakan suku bunga dan kondisi ekonomi global dapat terus menekan sektor keuangan.
  • Volatilitas Tinggi: Beta 1.46x menandakan saham ini lebih fluktuatif dibandingkan pasar secara umum.

Dasbor ini dibuat untuk tujuan ilustrasi berdasarkan data dan analisis yang tersedia per 18 Juni 2025. Ini bukan merupakan nasihat keuangan. Lakukan riset Anda sendiri sebelum membuat keputusan investasi.

Analisis Peluang Dogecoin sebagai Koin Meme dan Rekomendasi bagi Pelaku Pasar

Analisis Peluang Dogecoin sebagai Koin Meme dan Rekomendasi bagi Pelaku Pasar Laporan ini menyajikan tinjauan komprehensif tenta...