IDX Breakout Early Warning API

Sistem deteksi breakout dini untuk saham IDX berdasarkan skor volume, jarak ke resistance 52 minggu, dan alignment trend. Tersedia mode analisis tunggal dan batch scan.

Base Information

  • BASE_URL_API: https://api.maelyn.eu/api
  • Path / Endpoint: /financial/idx/breakout-early-warning
  • Method: GET
  • Credit Usage: 22

Authentication

x-maelyn-auth: YOUR_API_KEY

Description

Endpoint ini menghitung Breakout Score (0–100) untuk saham IDX berdasarkan tiga faktor utama: lonjakan volume vs rata-rata 20 hari, jarak harga ke resistance 52 minggu, dan alignment trend (harga > SMA20 > SMA50). Tersedia dua mode: analisis mendalam satu saham dengan validasi AI, atau batch scan seluruh TOP_SYMBOLS dengan ranking otomatis.

Query Parameters

NameTypeRequiredDescription
symbolstringCond.Kode saham untuk analisis tunggal. Contoh: BBCA. Wajib jika tidak menggunakan mode=scan
modestringCond.Gunakan scan untuk batch scan semua TOP saham IDX
sectorstringNoFilter sektor saat mode=scan: Perbankan Energi Consumer Teknologi Infrastruktur Properti Healthcare

Gunakan salah satu: ?symbol=BBCA atau ?mode=scan

Breakout Score Levels

LevelScoreDeskripsi
STRONG_BREAKOUT80–100Volume tinggi + sudah breakout resistance
NEAR_BREAKOUT60–79Mendekati resistance dengan volume meningkat
ACCUMULATION40–59Fase akumulasi, belum ada sinyal jelas
NORMAL0–39Tidak ada sinyal breakout

Example Usage

1. Analisis tunggal BBCA

GET /financial/idx/breakout-early-warning?symbol=BBCA

2. Batch scan semua top saham

GET /financial/idx/breakout-early-warning?mode=scan

3. Batch scan sektor Energi

GET /financial/idx/breakout-early-warning?mode=scan&sector=Energi

Success Response — Single Mode

{
  "success": true,
  "data": {
    "symbol": "BBCA",
    "breakout": {
      "score": 78,
      "level": "NEAR_BREAKOUT",
      "volMultiple": 2.4,
      "avgVol20": 11200000,
      "lastVol": 26880000,
      "high52": 10250,
      "distToResistancePct": 1.8,
      "isBreakout": false,
      "trendAligned": true,
      "atrExpansion": 1.6,
      "sma20": 9520.0,
      "sma50": 9310.0,
      "lastPrice": 9650
    },
    "ai_validation": {
      "validasi": "VALID",
      "katalis_fundamental": "BI tahan suku bunga, margin NIM bank tetap terjaga...",
      "volume_quality": "Institutional",
      "konfirmasi_dibutuhkan": "Close di atas 9.850 dengan volume > 2x rata-rata",
      "target_breakout": "10.000–10.250",
      "invalidation_level": "9.400",
      "rekomendasi_aksi": "Akumulasi bertahap di area 9.600–9.700",
      "risiko_utama": "Koreksi IHSG jika data inflasi AS mengecewakan",
      "disclaimer": "Analisis ini bukan saran investasi resmi."
    },
    "sources": []
  }
}

Success Response — Scan Mode

{
  "success": true,
  "data": {
    "scanned_count": 15,
    "hot_count": 3,
    "sector_filter": "ALL",
    "ranking": [
      {
        "symbol": "ADRO",
        "score": 88,
        "level": "STRONG_BREAKOUT",
        "vol_multiple": 3.2,
        "is_breakout": true,
        "dist_to_res_pct": 0.0,
        "trend_aligned": true,
        "last_price": 2850
      }
    ],
    "top3_ai_validation": [
      {
        "symbol": "ADRO",
        "validation": { "validasi": "VALID", "..." : "..." },
        "sources": []
      }
    ]
  }
}

Response Fields

FieldTypeDescription
scorenumberBreakout score 0–100
levelstringSTRONG_BREAKOUT, NEAR_BREAKOUT, ACCUMULATION, NORMAL
volMultiplenumberVolume terakhir vs rata-rata 20 hari
isBreakoutbooleantrue jika harga sudah menembus resistance 52 minggu
trendAlignedbooleantrue jika harga > SMA20 > SMA50
ai_validation.validasistringVALID, FAKEOUT_RISK, PREMATURE, atau INVALID

Error Response

Tidak ada parameter

{
  "success": false,
  "message": "Gunakan ?symbol=BBCA untuk analisis tunggal, atau ?mode=scan untuk batch scan."
}

Data tidak cukup

{
  "success": false,
  "message": "Data historis XXXX tidak cukup (minimal 52 data point / ~3 bulan)."
}

Playground