Strategi harga rata-rata kumulatif jumlah tetap reguler


Tanggal Pembuatan: 2023-09-15 16:52:06 Akhirnya memodifikasi: 2023-09-15 16:52:06
menyalin: 0 Jumlah klik: 645
1
fokus pada
1617
Pengikut

Strategi ini disebut strategi periodik acak rata-rata. Strategi ini melalui periodik acak membeli, secara bertahap mencapai posisi target, untuk mencapai kepemilikan jangka panjang dari aset.

Bagaimana strategi ini bekerja:

  1. Tetapkan jumlah dan frekuensi pembelian yang tetap.
  2. Dalam siklus tetap, membeli aset secara teratur dengan jumlah yang ditetapkan.
  3. Ketika jumlah kepemilikan akumulatif mencapai nilai terendah, posisi kosong akan dilunasi.
  4. Ulangi langkah-langkah di atas, dan lanjutkan untuk mengumpulkan posisi secara teratur.

Proses Operasi:

  1. Setiap periode tertentu (misalnya setiap bulan), membeli aset dengan jumlah tetap (misalnya $ 200).
  2. Ketika jumlah total kepemilikan melebihi batas yang ditetapkan (misalnya 200), semua posisi kosong.
  3. Kemudian memulai kembali proses pembelian reguler dan terus menumpuk.

Keuntungan dari strategi ini:

  1. Biaya kepemilikan yang lebih rendah dalam jangka panjang, dan keuntungan dari harga rata-rata.
  2. Risiko penarikan lebih kecil, tidak ada titik jual tinggi untuk mengejar target.
  3. Ini adalah salah satu cara yang paling efektif untuk mendapatkan keuntungan dari investasi.

Bahaya dari strategi ini:

  1. Hal ini membutuhkan kepemilikan jangka panjang dan tidak dapat menanggapi fluktuasi harga jangka pendek.
  2. Jika harga turun dalam jangka panjang, Anda bisa mengalami kerugian.
  3. Salah memilih tempat penjualannya, dan mungkin melewatkan tempat pengiriman terbaik.

Kesimpulannya, strategi kuota berkala mengakumulasi aset dengan cara membangun posisi secara batch, lebih ramah bagi investor garis panjang. Namun, pedagang masih perlu memperhatikan risiko pasar besar, dan mengoptimalkan strategi penjualan, untuk memaksimalkan keuntungan melalui posisi kosong batch pada titik tinggi pasar.

Kode Sumber Strategi
/*backtest
start: 2022-09-08 00:00:00
end: 2023-09-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tanoshimooo

//@version=5
strategy ("DCA", initial_capital=44700, overlay=true)

// To start script at a given date
tz = 0 //timezone
timeadj = time + tz * 60 * 60 * 1000 //adjust the time (unix)
t1 = timeadj >= timestamp(2003, 03, 01, 0, 0) ? 1 : 0 //get the starting time

// Variables
var float lastRef = na
if barstate.isfirst
    lastRef := close
var float cash = 50000 // available money
var float sell_contracts = na
var bool first_trade_done = false

// Parameters
var float sell_min = 200 //200 sell more than sell_min or sell all
var float buy_dollars = 200

var int bi = 90

// LONGS
// if bar_index < bi
strategy.order("Long", strategy.long, int(buy_dollars/close))
cash := cash - int(buy_dollars/close)*close
// label.new(bar_index, na, na, xloc.bar_index, yloc.abovebar, color.blue, label.style_triangleup, color.blue, size.tiny)

//plot(cash)

// SHORTS
// if longExit  
//     if (strategy.position_size*sf*close > sell_min) and (strategy.position_size*sf >= 1)
//         strategy.order ("Long", strategy.short, strategy.position_size*sf)
//         cash := cash + strategy.position_size*sf*close
//     else 
//         strategy.order ("Long", strategy.short, strategy.position_size)
//         cash := cash + strategy.position_size*close
//     lastRef := close
//     label.new(bar_index, na, na, xloc.bar_index, yloc.belowbar, color.red, label.style_triangledown, color.red, size.tiny)

if bar_index == last_bar_index - 2 // bi
    strategy.order ("Long", strategy.short, strategy.position_size)