Strategi ini memerhatikan perubahan warna K-line untuk menentukan trend pasaran dan menetapkan kedudukan panjang dan pendek dengan sewajarnya. Prinsip strategi adalah mudah dan mudah, bertujuan untuk menangkap trend jangka pendek.
Strategi ini menilai warna K-line berdasarkan hubungan antara harga penutupan dan harga pembukaan. Harga penutupan yang lebih besar daripada harga pembukaan adalah K-line merah, dan sebaliknya adalah K-line hijau.
Apabila terdapat garis-garis K berturut-turut yang ditentukan dengan warna yang sama (boleh disesuaikan), lakukan tindakan yang sewajarnya:
Jika merah, pergi panjang.
Jika hijau, pergi pendek.
Apabila warna garis K berubah, tutup semua kedudukan.
Prinsipnya jelas dan mudah, mudah difahami dan dilaksanakan.
Boleh mengesan trend jangka pendek dan berdagang dengan kerap.
Bilangan K-line boleh disesuaikan untuk menyesuaikan kepekaan strategi.
Boleh pergi panjang atau pendek hanya untuk mengurangkan kekerapan perdagangan.
Jangka masa perdagangan boleh ditetapkan untuk mengelakkan tempoh tertentu.
Tidak dapat menentukan arah trend, risiko akan dipukul.
Tidak dapat menentukan masa kemasukan yang optimum, risiko kemasukan awal atau peluang yang hilang.
Risiko pembalikan sebagai perubahan warna tidak semestinya mewakili perubahan trend sebenar.
Menjaring jangka pendek boleh membawa kepada tekanan perdagangan dan komisen yang berlebihan.
Tetapan parameter yang tidak sesuai boleh menyebabkan prestasi strategi yang buruk.
Pertimbangkan untuk menambah penunjuk penilaian trend untuk mengelakkan kemasukan terbalik, contohnya MACD, KD.
Tetapkan stop loss untuk mengurangkan risiko kerugian.
Ringankan kriteria keluar dengan sewajarnya untuk mengelakkan keluar yang terlalu kerap.
Gabungkan faktor lain untuk mengoptimumkan masa kemasukan, contohnya peningkatan jumlah, memecahkan paras tertinggi sebelumnya.
Gunakan pesanan pasaran untuk mengurangkan kesan slippage.
Strategi ini berasal dari analisis teknikal K-line yang paling mudah, mencapai pengesanan trend asas dengan menilai warna K-line. Kelebihannya adalah kesederhanaan, kekerapan perdagangan yang tinggi, dan penyesuaian parameter yang fleksibel. Tetapi ia juga mempunyai beberapa kebutaan, tidak dapat menentukan kualiti trend. Ia boleh ditingkatkan dengan menambah penunjuk penilaian trend sambil menyimpannya mudah, dengan itu meningkatkan prestasi strategi.
/*backtest start: 2023-09-10 00:00:00 end: 2023-10-10 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Binance","currency":"BTC_USDT"}] */ //2018 //Noro //@version=2 strategy("Noro's Candles Strategy v1.0", shorttitle = "Candles str 1.0", overlay=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100.0, pyramiding = 0) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") bq = input(2, defval = 2, minval = 2, maxval = 6, title = "Bars Q") fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From Day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To Day") //Bars Q bar = close > open ? 1 : close < open ? -1 : 0 gb = bar == 1 rb = bar == -1 redbars = bq == 2 and rb and rb[1] ? 1 : bq == 3 and rb and rb[1] and rb[2] ? 1 : bq == 4 and rb and rb[1] and rb[2] and rb[3] ? 1 : bq == 5 and rb[1] and rb[2] and rb[3] and rb[4] ? 1 : bq == 6 and rb[1] and rb[2] and rb[3] and rb[4] and rb[5] ? 1 : 0 greenbars = bq == 2 and gb and gb[1] ? 1 : bq == 3 and gb and gb[1] and gb[2] ? 1 : bq == 4 and gb and gb[1] and gb[2] and gb[3] ? 1 : bq == 5 and gb[1] and gb[2] and gb[3] and gb[4] ? 1 : bq == 6 and gb[1] and gb[2] and gb[3] and gb[4] and gb[5] ? 1 : 0 //Signals up1 = redbars == 1 dn1 = greenbars == 1 exit = bar != bar[1] if up1 strategy.entry("Long", strategy.long, needlong == false ? 0 : na) if dn1 strategy.entry("Short", strategy.short, needshort == false ? 0 : na) if time > timestamp(toyear, tomonth, today, 00, 00) or exit strategy.close_all()