Strategi ini menggunakan Indeks Volume Negatif (NVI) dan purata bergerak untuk membina isyarat panjang dan pendek dan membuat perdagangan pembalikan apabila syarat dipenuhi.
Penunjuk teras strategi pembalikan Indeks Volume Negatif adalah Indeks Volume Negatif (NVI). Formula pengiraan NVI adalah:
Jika jumlah hari ini < jumlah hari sebelumnya: NVI = NVI hari sebelumnya + kadar perubahan harga hari ini
Jika jumlah hari ini >= jumlah hari sebelumnya: NVI = NVI hari sebelumnya
Maksudnya, NVI hanya dikemas kini pada hari apabila jumlah dagangan menyusut, dan trend harga tercermin melalui penambahan dan pengurangan kadar perubahan harga. Logik membina isyarat panjang dan pendek dengan NVI dan purata bergeraknya adalah:
Apabila NVI di atas purata bergerak N-hari, pergi panjang.
Apabila NVI di bawah purata bergerak N-hari, pergi pendek.
Jadi ia membuat perdagangan pembalikan apabila jumlah menyusut.
Kelebihan utama strategi pembalikan Indeks Volume Negatif adalah:
Menggunakan isyarat kelantangan boleh mencari titik pembalikan dan mempunyai kelebihan masa tertentu.
Logik strategi adalah mudah, mudah difahami dan dilaksanakan.
Parameter boleh dioptimumkan untuk menyesuaikan diri dengan persekitaran pasaran yang berbeza.
Strategi pembalikan Indeks Volume Negatif juga mempunyai beberapa risiko:
Ketepatan isyarat jumlah tidak dapat dijamin, dan terdapat kemungkinan perdagangan yang salah.
Tetapan parameter yang tidak betul boleh membawa kepada perdagangan yang terlalu kerap atau isyarat yang tidak jelas.
Memastikan sumber data yang boleh dipercayai untuk mengelakkan risiko daripada data jumlah yang salah.
Risiko ini boleh dikurangkan melalui pengoptimuman parameter, strategi stop loss, dll.
Strategi pembalikan Indeks Volume Negatif boleh dioptimumkan dalam aspek berikut:
Mengoptimumkan parameter purata bergerak untuk mencari parameter yang lebih menggambarkan ciri pasaran.
Tambah penunjuk lain untuk penapisan untuk mengelakkan perdagangan yang salah yang tidak perlu.
Gabungkan dengan kaedah stop loss yang kuat untuk mengehadkan kerugian tunggal.
Uji perbezaan dalam tetapan parameter untuk pelbagai jenis, dan tetapkan parameter penyesuaian.
Strategi pembalikan Indeks Volume Negatif membuat operasi pembalikan apabila jumlah dagangan menyusut, bertujuan untuk menangkap titik pembalikan trend yang berpotensi. Strategi ini mempunyai kelebihan kesederhanaan dan mudah difahami, dan juga mempunyai risiko perdagangan yang salah. Kestabilan dan keuntungan strategi dapat ditingkatkan melalui pengoptimuman parameter, menambah penunjuk tambahan, dll. Secara umum, strategi pembalikan Indeks Volume Negatif mempunyai prospek yang baik untuk pembangunan dan penerapan.
/*backtest start: 2023-12-13 00:00:00 end: 2023-12-20 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter 11/08/2017 // The theory behind the indexes is as follows: On days of increasing // volume, you can expect prices to increase, and on days of decreasing // volume, you can expect prices to decrease. This goes with the idea of // the market being in-gear and out-of-gear. Both PVI and NVI work in similar // fashions: Both are a running cumulative of values, which means you either // keep adding or subtracting price rate of change each day to the previous day`s // sum. In the case of PVI, if today`s volume is less than yesterday`s, don`t add // anything; if today`s volume is greater, then add today`s price rate of change. // For NVI, add today`s price rate of change only if today`s volume is less than // yesterday`s. // // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. //////////////////////////////////////////////////////////// strategy(title="Negative Volume Index Backtest", shorttitle="NVI Str") EMA_Len = input(255, minval=1) reverse = input(false, title="Trade reverse") xROC = roc(close, 1) nRes = iff(volume < volume[1], nz(nRes[1], 0) + xROC, nz(nRes[1], 0)) nResEMA = ema(nRes, EMA_Len) pos = iff(nRes > nResEMA, 1, iff(nRes < nResEMA, -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(nRes, color=red, title="NVI") plot(nResEMA, color=blue, title="EMA")