Idea utama strategi ini ialah apabila harga saham jatuh kepada peratusan tertentu, kedudukan boleh ditingkatkan secara beransur-ansur untuk menurunkan kos purata kedudukan pegangan.
Apabila harga saham pertama kali melintasi di atas purata bergerak mudah 20 hari, pergi lama untuk membuka kedudukan. Jika stok kemudian jatuh oleh peratusan kerugian sasaran yang ditetapkan, seperti 10%, tambah kepada kedudukan pada peratusan yang ditentukan, seperti 50% dari kedudukan semasa. Ini menurunkan kos purata kedudukan pegangan. Apabila harga saham mencapai titik keuntungan yang ditetapkan, seperti 10% di atas kos pegangan purata, tutup semua kedudukan untuk mengambil keuntungan.
Secara khusus, fungsi strategi menetapkan parameter seperti membenarkan sehingga 4 pembelian tambahan, dengan saiz kedudukan ditetapkan sebagai peratusan ekuiti, dan saiz kedudukan awal pada 10% ekuiti. Ia mendapat garis purata bergerak mudah 20 hari. Apabila harga penutupan melintasi di atas purata itu dan tidak ada kedudukan semasa, ia membuka kedudukan panjang. Kemudian ia mengira peratusan keuntungan / kerugian terapung kedudukan. Jika ia mencapai peratusan kerugian sasaran, ia terus berpiramid pada peratusan pembelian tambahan sasaran sehingga saham bangkit semula untuk mencapai sasaran keuntungan.
Kelebihan terbesar strategi jenis ini adalah bahawa apabila keadaan pasaran tidak menguntungkan, kos purata kedudukan pegangan boleh dikurangkan melalui pembelian tambahan piramid. Ini membolehkan keuntungan yang lebih besar diperoleh apabila keadaan pasaran bertambah baik, mencapai kesan
Pada masa yang sama, strategi ini membolehkan beberapa pembelian tambahan, memanfaatkan perbezaan masa dalam pembalikan pasaran untuk menyesuaikan kedudukan secara beransur-ansur.
Sudah tentu, jika harga terus jatuh, strategi ini juga menghadapi risiko kerugian besar. Terutamanya di pasaran beruang, tahap penurunan harga mungkin jauh melebihi imaginasi kita. Oleh itu, perkadaran dan bilangan pembelian tambahan mesti ditetapkan dengan munasabah untuk mengawal risiko dalam julat yang boleh diterima.
Pada masa yang sama, kita mesti menyedari bahawa jika semua pelabur mengamalkan strategi seperti itu, apabila banyak pelabur mencapai sasaran peratusan kerugian mereka, mungkin akan ada senario penambahan kolektif kepada kedudukan. Ini akan mendorong harga naik dan membentuk pemulihan jangka pendek yang tidak rasional. Jika kita gagal menilai keadaan dengan betul, kita mungkin salah menilai trend pasaran dan terus meningkatkan kedudukan kita. Hasilnya akan menjadi kerugian yang lebih besar apabila harga merosot lagi.
Terdapat beberapa cara untuk mengoptimumkan strategi ini:
Sesuaikan peratusan pembelian tambahan secara dinamik. Ini boleh diselaraskan dalam masa nyata berdasarkan keadaan pasaran.
Sertakan penunjuk kuantitatif. Sebagai contoh, memantau lonjakan dalam jumlah untuk mengesahkan isyarat pembalikan dan mengelakkan isyarat palsu.
Menggunakan penangguhan kerugian yang tertinggal. Selepas pembelian tambahan, gunakan sistem penangguhan kerugian progresif untuk memastikan kerugian disimpan dalam julat tertentu.
Strategi pengesanan harga purata dinamik menggunakan kesan harga purata dengan menyesuaikan kedudukan melalui pembelian tambahan. Dalam premis mempunyai sokongan modal yang mencukupi, ia dapat secara berkesan menangkap pulangan di atas purata apabila harga terbalik. Kuncinya adalah menilai masa dan perkadaran dengan betul untuk menjaga risiko dalam julat yang boleh diterima. Jika digunakan dengan betul, ini boleh menjadi kaedah yang sangat berkesan dalam perdagangan kuantitatif.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 // ########################################################################## // // // This scipt is intended to demonstrate how pyramiding can be used to average // down a position. // // We will buy when a stock closes above its 20 day MA and Average down if // the trade does not go in our favor. We will hold until a profit is made. // (which could mean we hold forever) // // ########################################################################## // strategy("Average Down", overlay=true ) // Date Ranges from_month = input(defval = 1, title = "From Month", minval = 1, maxval = 12) from_day = input(defval = 1, title = "From Day", minval = 1, maxval = 31) from_year = input(defval = 2010, title = "From Year") to_month = input(defval = 1, title = "To Month", minval = 1, maxval = 12) to_day = input(defval = 1, title = "To Day", minval = 1, maxval = 31) to_year = input(defval = 9999, title = "To Year") start = timestamp(from_year, from_month, from_day, 00, 00) // backtest start window finish = timestamp(to_year, to_month, to_day, 23, 59) // backtest finish window window = true // Strategy Inputs target_perc = input(-10, title='Target Loss to Average Down (%)', maxval=0)/100 take_profit = input(10, title='Target Take Profit', minval=0)/100 target_qty = input(50, title='% Of Current Holdings to Buy', minval=0)/100 sma_period = input(20, title='SMA Period') // Get our SMA, this will be used for our first entry ma = sma(close,sma_period) // Calculate our key levels pnl = (close - strategy.position_avg_price) / strategy.position_avg_price take_profit_level = strategy.position_avg_price * (1 + take_profit) // First Position first_long = crossover(close, ma) and strategy.position_size == 0 and window if (first_long) strategy.entry("Long", strategy.long) // Average Down! if (pnl <= target_perc) qty = floor(strategy.position_size * target_qty) strategy.entry("Long", strategy.long, qty=qty) // Take Profit! strategy.exit("Take Profit", "Long", limit=take_profit_level) // Plotting plot(ma, color=blue, linewidth=2, title='SMA') plot(strategy.position_avg_price, style=linebr, color=red, title='Average Price')