{ "rule_version": "fm58-practice-v1", "purpose": "Dua episode pembelajaran berbeda dipilih tanpa memeriksa hasil sesudahnya. Hanya persiapan, tanpa perubahan artikel.", "frozen_before_first_scan": true, "dataset_order": [ "USDJPY-H1.csv", "GBPUSD-H1.csv", "EURUSD-H1.csv" ], "selection_order": "Waktu pengenalan layak paling awal di seluruh dataset; urutan dataset yang dicantumkan memutus waktu yang sama. Pilih kecocokan pertama untuk setiap tugas. Jangan menyaring berdasarkan harga sesudahnya, pembalikan, profitabilitas, keindahan visual atau jumlah contoh.", "original_data": "patterns-5-4-real-2026-10-21/data; SHA-256 provenance asli dan SHA-256 setiap dataset terpilih diverifikasi sebelum perhitungan", "price_input": "OHLC Bid yang sudah tutup. Close menjadi masukan RSI dan Bollinger/SMA; jendela High/Low menjadi masukan stochastic dan True Range. Tanpa Ask, spread, eksekusi atau tick rekaan.", "decimal_policy": "Kuantisasi hanya derau serialisasi CSV float biner ke digit penyedia asli, dengan penyesuaian absolut maksimum yang diizinkan di bawah 1e-12. Pertahankan string sumber dan SHA arsip asli.", "time_basis": "Label pembukaan batang MT5 asli. Offset jam broker belum diverifikasi secara independen; jangan melabeli ulang jam ini sebagai UTC/lokal. Waktu pengenalan adalah batas kelayakan paling awal setelah batang berakhir, bukan received_at langsung yang diukur.", "source_prefix": "Indikator selalu memakai setiap catatan pendahulu yang diekspor sejak indeks asli 0. Tidak memulai ulang pada jendela kasus, awal kuartal atau tepi gambar.", "rsi14": { "input": "Close", "seed": "Rata-rata bagian positif dan negatif dari 14 perubahan antarharga penutupan pertama; RSI pertama pada indeks sumber 14", "recurrence": "U_t=(13*U_prev+gain_t)/14; D_t=(13*D_prev+loss_t)/14; RSI=100*U/(U+D), tanpa pembulatan antara", "zero_policy": "Sebelum nilai awal: tidak tersedia. U=D=0: tidak tersedia. U positif dengan D=0:100. U=0 dengan D positif:0." }, "divergence": { "centre_range_start_inclusive": "2026-01-01 00:00", "recognition_range_end_exclusive": "2026-04-01 00:00", "pivot": "Maksimum atau minimum lokal bersama yang ketat pada Close AND RSI di pusat yang sama, lebih besar/kecil dari masing-masing dua batang kiri dan dua batang kanan yang sudah tutup. Nilai sama dan RSI tidak tersedia dikecualikan. Definisi pilihan ini membandingkan pivot harga tutup, bukan sumbu High/Low.", "pairing": "Maksimum bersama terkonfirmasi berurutan, atau minimum bersama terkonfirmasi berurutan, yang sejenis. Jangan melewati pivot bersama sejenis di antaranya untuk memperindah divergensi.", "spacing_bars_inclusive": [ 5, 30 ], "continuity": "Setiap batang dari pusat pertama dikurangi 2 hingga pusat kedua ditambah 2 harus berjarak tepat satu jam nominal; jangan menyimpulkan penyebab jeda.", "bearish": "Close2 >= Close1 + one pip; RSI1 >=60; RSI2 <= RSI1 -3 points", "bullish": "Close2 <= Close1 - one pip; RSI1 <=40; RSI2 >= RSI1 +3 points", "recognition": "Kedua batang kanan pivot2 harus ditutup. Peristiwa terpilih dicatat pada indeks pivot2+2; kelayakan paling awal adalah epoch pembukaan batang itu ditambah 3600 detik, dengan syarat catatan finalnya diterima.", "threshold_meaning": "Satu pip dan 3 poin RSI adalah ambang pemisahan tetap untuk pembelajaran, bukan parameter trading yang dioptimalkan atau keunggulan statistik.", "before_frame": "Pada penutupan pusat pivot kedua yang diusulkan: tampilkan sebagai sementara, belum terkonfirmasi, hanya dengan data yang tersedia saat itu.", "recognition_frame": "Pada penutupan pivot2+2: pivot bersama dan divergensi pertama dapat diuji menurut aturan ini.", "after_horizon_observed_H1": 12, "after_use": "Buka 12 batang H1 teramati berikutnya yang sudah tutup setelah pengenalan, tanpa memilih berdasarkan arah. Catat jeda kalender secara eksplisit. Hasil ini bukan ukuran masuk/keluar atau profitabilitas.", "plot_context_bars_before_first_pivot": 24 }, "stochastic_persistence": { "run_start_range_inclusive": "2026-04-01 00:00", "recognition_range_end_exclusive": "2026-07-01 00:00", "K_period": 14, "slowing": 3, "D_period": 3, "K_formula": "Untuk setiap batang hitung Ln=min(Low over latest 14), Hn=max(High over latest 14), A=Close-Ln, B=Hn-Ln. SlowK=100*sum(A over latest 3)/sum(B over latest 3). Ini rekonstruksi rasio jumlah Low/High yang diungkapkan, bukan SMA dari 3 nilai %K mentah atau hasil baca terminal.", "D_formula": "SMA dari 3 nilai SlowK tersedia terakhir; tanpa nilai sampai jendela lengkap", "zero_policy": "Penyebut jumlah nol membuat SlowK tidak tersedia dan mereset rangkaian; tidak membawa nilai lama atau mengarang nilai", "extreme_upper_inclusive": 80, "extreme_lower_inclusive": 20, "consecutive_extreme_bars": 6, "trigger": "Penyelesaian pertama rangkaian enam batang berurutan. Aktifkan ulang hanya setelah SlowK keluar dari zona ekstrem itu. Keenam batang harus tepat berjarak satu jam dan semuanya dibuka dalam rentang kasus Q2.", "past_only_upward_descriptor": "Pada batang keenam: Close > SMA50, SMA50 > SMA50 sepuluh batang teramati sebelumnya, dan Close > Close dua puluh batang teramati sebelumnya", "past_only_downward_descriptor": "Pada batang keenam: Close < SMA50, SMA50 < SMA50 sepuluh batang teramati sebelumnya, dan Close < Close dua puluh batang teramati sebelumnya", "direction_matching": "Ekstrem atas memerlukan deskripsi arah naik; ekstrem bawah deskripsi arah turun. Ini deskripsi eksplisit data masa lalu, bukan bukti rezim tren masa depan.", "descriptor_continuity": "60 batang terakhir untuk deskripsi harus tepat berjarak satu jam. Tolak kandidat dengan jeda pada interval itu, tanpa mengubah ambang.", "ATR_context": "TR_i=max(High-Low,abs(High-Close_prev),abs(Low-Close_prev)) for i>=1. ATR14=SMA dari 14 nilai TR terakhir, pertama pada index14. Varian SMA eksplisit sesuai gaya kode MT5, bukan RMA Wilder. Hanya konteks, bukan gerbang seleksi atau suara independen.", "Bollinger_context": "SMA20 Close ±2 simpangan baku populasi dari 20 harga tutup yang sama, pembagi20. Hanya jendela lengkap. Hanya konteks, bukan gerbang seleksi atau suara independen.", "before_frame": "Pada batang kelima rangkaian: nilai keenam yang memenuhi syarat belum diketahui; seluruh nilai tren/konteks yang ditampilkan berhenti di situ.", "recognition_frame": "Pada penutupan batang keenam: persistensi enam nilai pertama terbentuk menurut aturan yang dibekukan.", "after_horizon_observed_H1": 12, "plot_context_bars_before_run": 36 }, "disjointness": "Kedua jendela kasus terpilih tidak boleh tumpang tindih satu sama lain atau EURUSD lama 2025-12-02 hingga 2025-12-04. Kegagalan dilaporkan, bukan diperbaiki dengan memilih hasil sesudahnya yang lebih menarik.", "no_match_policy": "Laporkan tidak ada kasus layak menurut v1; jangan diam-diam melonggarkan tanggal, ambang, urutan dataset atau definisi pivot. Revisi memerlukan versi aturan baru yang eksplisit sebelum pemindaian baru.", "not_authorised": [ "panggilan MT5", "transaksi", "perubahan artikel", "penulisan NAS", "deploy", "klaim kinerja statistik" ] }