Strategi Saham Osilator Purata Bergerak Berganda

Penulis:ChaoZhang, Tarikh: 2024-02-05 10:47:38
Tag:

PC perlu mendapatkan double_smoothed_abs_pc

  1. Akhirnya indeks TSI = 100* ((double_smoothed_pc/double_smoothed_abs_pc)

Dengan membandingkan nilai TSI dengan garis isyaratnya tsi_signal, kita boleh menentukan zon overbought atau oversold, dengan itu memutuskan titik beli dan jual.

Isyarat beli: TSI melintasi isyaratnya ke atas, menunjukkan pembalikan harga saham, menandakan permulaan zon overbought di mana kita harus panjang.

Isyarat jual: TSI melintasi bawah isyaratnya ke bawah, menunjukkan pembalikan harga saham, menandakan akhir zon overbought di mana kita harus menjual.

Analisis Kelebihan

Kelebihan terbesar strategi ini terletak pada penggunaan penunjuk purata bergerak berganda untuk mengenal pasti ciri-ciri kitaran dalam harga saham. Dengan menggunakan kedua-dua tempoh panjang dan pendek secara serentak dalam purata bergerak berganda, ia dapat menangkap trend perubahan harga dengan lebih sensitif dan tepat daripada purata bergerak tunggal, dan lebih berkesan dalam menentukan isyarat perdagangan.

Di samping itu, strategi ini memilih indeks TSI dan bukannya penunjuk teknikal biasa yang lain, kerana TSI memberi lebih banyak perhatian untuk mengira momentum perubahan harga, yang boleh menilai keadaan overbought/oversold dengan lebih tepat, menghasilkan titik dagangan yang lebih baik.

Analisis Risiko

Risiko terbesar strategi ini adalah bahawa purata bergerak berganda itu sendiri agak sensitif terhadap perubahan harga. Dalam kes turun naik harga, ia boleh dengan mudah menghasilkan isyarat palsu. Selain itu, kriteria TSI untuk menilai zon overbought / oversold masih subjektif, dan tetapan parameter yang tidak betul juga memberi kesan kepada ketepatan.

Untuk mengawal risiko tersebut, adalah dinasihatkan untuk mengoptimumkan parameter dengan betul dengan menyesuaikan panjang purata bergerak berganda. Menggabungkan penunjuk lain untuk mengesahkan isyarat juga diperlukan untuk mengelakkan membuka kedudukan di tengah-tengah turun naik. Di samping itu, mengoptimumkan strategi stop-loss dan menubuhkan langkah-langkah kawalan risiko terhadap kecemasan adalah sangat penting.

Arahan pengoptimuman

Arah pengoptimuman strategi ini terutamanya memberi tumpuan kepada dua aspek:

  1. Pengoptimuman parameter. Gabungan optimum parameter seperti panjang purata bergerak panjang dan pendek dan garis isyarat boleh diuji semula untuk meningkatkan kepekaan.

  2. Mengkonfigurasi penapis penunjuk. Seperti menggabungkan Bollinger Bands, KDJ dan sebagainya untuk mengesahkan isyarat beli / jual dan mencegah pembukaan kedudukan yang salah. Penapis jumlah dagangan juga boleh digunakan untuk kedudukan terbuka hanya apabila jumlahnya meningkat.

  3. Tambah strategi stop-loss. Tetapkan stop loss bergerak, keluar tepat pada masanya untuk mengehadkan kerugian satu kedudukan. Juga kita boleh menangguhkan perdagangan sementara berdasarkan keadaan pasaran untuk mengawal risiko sistematik.

  4. Mengoptimumkan saiz kedudukan. Tetapkan saiz dinamik dan perkadaran kedudukan berdasarkan keadaan pasaran untuk menguruskan pendedahan risiko setiap perdagangan.

Ringkasan

Strategi ini menggunakan kaedah pengiraan indeks Osilator Purata Bergerak Berganda, mengintegrasikan analisis jangka panjang dan jangka pendek perubahan momentum harga, dengan itu menentukan zon overbought dan oversold untuk memutuskan entri dan keluar. Berbanding dengan purata bergerak tunggal, ia mempunyai kelebihan penilaian yang lebih tepat dan sensitif. Sudah tentu, pengoptimuman parameter yang betul masih diperlukan, ditambah dengan penunjuk lain untuk penapisan isyarat, untuk meningkatkan kestabilan dan keuntungan. Secara keseluruhan, strategi ini menyediakan alat teknikal yang berkesan untuk menentukan titik perdagangan, yang bernilai diuji dan dioptimumkan secara langsung.


/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Scriptâ„¢ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © shankardey7310

//@version=5
strategy("TSI STOCKS", shorttitle="TSI", overlay=true)

initialCapital = input(10000, title="Initial Capital")
riskPercent = input(1, title="Risk Percentage") / 100

longLength = input(12, title="Long Length")
shortLength = input(9, title="Short Length")
signalLength = input(12, title="Signal Length")

price = close
pc = ta.change(price)

double_smooth(src, long, short) =>
    first_smooth = ta.ema(src, long)
    ta.ema(first_smooth, short)

double_smoothed_pc = double_smooth(pc, longLength, shortLength)
double_smoothed_abs_pc = double_smooth(math.abs(pc), longLength, shortLength)
tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
tsi_signal = ta.ema(tsi_value, signalLength)

riskAmount = (initialCapital * riskPercent) / close

if (tsi_value > tsi_signal and tsi_value[1] <= tsi_signal[1])
    strategy.entry("Long", strategy.long)

if (tsi_value < tsi_signal and tsi_value[1] >= tsi_signal[1])
    strategy.close("Long")

plot(tsi_value, title="True Strength Index", color=#2962FF)
plot(tsi_signal, title="Signal", color=#E91E63)
hline(0, title="Zero", color=#787B86)

Lebih lanjut