Strategi ini menentukan arah lilin masa depan dengan menganalisis harga penutupan berbanding harga pembukaan N lilin yang lalu. Ia mengambil kedudukan panjang atau pendek berdasarkan isyarat arah lilin.
Logik teras strategi ini ialah:
Tetapkan parameter NUM_CANDLES untuk menentukan bilangan lilin untuk dianalisis.
Tentukan fungsi candle_dir untuk menentukan arah lilin tunggal. close>open adalah bullish, close
Tentukan fungsi count_candles untuk mengira bilangan lilin dengan arah tertentu dalam lilin NUM_CANDLES yang lalu.
Hitung bilangan lilin menaik, menurun dan neutral dalam lilin NUM_CANDLES yang lalu, simpan dalam ups, dns, neu.
Tentukan penunjuk indic, nilainya sama dengan ups-dns tambah / tolak neu.
Menentukan entri panjang/pendek berdasarkan penunjuk Indik.
Dengan menganalisis arah lilin dari sebilangan tertentu lilin, strategi ini menganggarkan kebarangkalian arah lilin masa depan untuk keputusan perdagangan.
Logik strategi adalah jelas dan mudah difahami, ditafsirkan dan disahkan.
Hanya data lilin yang diperlukan, mengurangkan kos pengkomputeran.
Mudah untuk menyesuaikan kepekaan dengan menyesuaikan parameter NUM_CANDLES.
Boleh digunakan untuk semua produk dan jangka masa, kebolehan menyesuaikan diri yang tinggi.
Mudah untuk mengoptimumkan parameter untuk mencari kombinasi terbaik.
Tidak dapat mengendalikan pasaran terikat julat, boleh menyebabkan perdagangan berlebihan.
Tempoh sampel yang tidak sesuai boleh menyebabkan kelewatan isyarat, NUM_CANDLES memerlukan penyesuaian yang teliti.
Tidak dapat menyesuaikan diri dengan perubahan trend, risiko kerugian dalam perubahan trend.
Kesan kos dagangan perlu dipertimbangkan untuk mengelakkan perdagangan berlebihan.
Berhati-hati dengan pemasangan berlebihan dalam pengoptimuman parameter, memerlukan pengesahan pelbagai pasaran.
Pertimbangkan untuk menambah stop loss kepada limit loss.
Gabungkan dengan penunjuk trend untuk mengelakkan perdagangan yang bertentangan dengan trend.
Meningkatkan saiz sampel atau menggunakan jangka masa yang lebih pendek untuk meningkatkan kestabilan.
Pertimbangkan penggabungan pelbagai pasaran untuk meningkatkan kadar kemenangan.
Menggunakan pembelajaran mesin untuk pengoptimuman parameter automatik.
Strategi ini menentukan arah perdagangan dengan menganalisis arah lilin, dengan logik yang jelas dan mudah. Sensitiviti boleh dikawal melalui penyesuaian parameter. Kelebihan adalah kesederhanaan, keperluan yang rendah, dan fleksibiliti yang luas, tetapi beberapa risiko wujud dan pengoptimuman lanjut diperlukan untuk meningkatkan kestabilan. Secara keseluruhan, strategi ini menyediakan pendekatan yang mudah dan praktikal untuk perdagangan kuantitatif.
/*backtest start: 2023-09-24 00:00:00 end: 2023-10-24 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Refined CandleCounter Strategy by origo", overlay=true) // how many candles to count NUM_CANDLES = 7 // determine candle direction candle_dir = close > open ? 1 : (round(close-open) == 0 ? 0 : -1) // return # of candles with a given direction count_candles(dir, max) => count = 0 for i = 0 to max if candle_dir[i] == dir count := count + 1 count ups = count_candles(1, NUM_CANDLES) dns = count_candles(-1, NUM_CANDLES) neu = count_candles(0, NUM_CANDLES) indic = ups-dns if indic > 0 indic := indic+neu else indic := indic-neu plotarrow(neu, title="UP vs DN") longCondition = (indic) > 0 shortCondition = (indic) <= 0 strategy.entry("buy", strategy.long, 1, when = longCondition and not shortCondition) strategy.entry("sell", strategy.short, 1, when = shortCondition and not longCondition)