Strategi akuisisi kuantitatif BIST ini terdiri dari 4 tahap

Penulis:ChaoZhang, Tanggal: 2023-12-19 15:21:22
Tag:

img

Strategi akuisisi kuantitatif saham BIST ini didasarkan pada pembelian empat tahap untuk melacak pergerakan gelombang. Ini memasuki pasar selama post-manipulasi dan menjual ketika permintaan pembeli meningkat. Strategi ini cocok untuk saham dengan fluktuasi besar, dan mencapai kontrol biaya yang lebih baik melalui pembelian tahap demi tahap.

Prinsip Strategi

Strategi ini pertama-tama menghitung garis resistance dan support. garis resistance ditentukan oleh persimpangan harga close dan moving average oscillating dari harga high, sedangkan support line ditentukan oleh persimpangan harga close dan moving average oscillating dari harga low.

Ketika harga menembus di bawah garis dukungan, jika harga berada dalam rentang pembelian yang ditetapkan dari garis resistensi, ia akan membeli 25% dari posisi di tahap pertama. Kemudian ia akan membeli 25% posisi lain di sekitar harga beli pertama, dan seterusnya selama 4 kali, akhirnya memegang 100% dari posisi.

Ketika harga saham melebihi dua kali biaya pembukaan, itu akan menutup semua posisi.

Keuntungan dari Strategi

  1. Biaya pembelian yang lebih rendah melalui pembelian empat tahap
  2. Titik masuk yang lebih baik dengan melacak fluktuasi persediaan
  3. Nilai keuntungan yang wajar untuk pengembalian yang layak

Risiko dan Solusi

  1. Penurunan persediaan terus tanpa stop loss, menyebabkan kerugian besar

    • Menetapkan stop loss yang wajar untuk mengontrol kerugian secara efektif
  2. Pengaturan parameter yang tidak benar membuat beberapa titik beli terlalu dekat untuk mendiversifikasi biaya

    • Menetapkan perbedaan harga yang tepat antara tahap pembelian
  3. Titik stop loss terlalu luas untuk mengontrol kerugian secara efektif

    • Atur jarak berhenti yang tepat berdasarkan lingkungan perdagangan yang sebenarnya dan toleransi psikologis

Arahan Optimasi

  1. Sesuaikan parameter untuk berbagai jenis stok agar lebih sesuai dengan karakteristik mereka

  2. Tambahkan indikator volatilitas untuk membeli ketika volatilitas meningkat

  3. Mengoptimalkan mengambil keuntungan dengan menggunakan trailing stop untuk mencapai pengembalian yang lebih tinggi

  4. Tambahkan pengaturan stop loss untuk memotong kerugian ketika harga melanggar tingkat tertentu

Ringkasan

Strategi akuisisi kuantitatif saham BIST 4 tahap sangat cocok untuk saham konsep populer secara keseluruhan. Dengan menstage pembelian, ia dapat secara efektif memanfaatkan volatilitas saham untuk mendapatkan biaya yang lebih baik ketika harga menarik kembali. Juga, pengaturan mengambil keuntungan dan stop loss yang wajar memungkinkan untuk berkinerja baik dalam pengendalian risiko. Dengan penyesuaian parameter berkelanjutan dan optimasi berdasarkan lingkungan pasar yang sebenarnya, strategi ini dapat secara andal memberikan alfa.


/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 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/
// © Cantalk

//@version=5
strategy("BİST_100 HİSSELERİ 1_SAAT 4 KADEME ALIM",overlay = true, pyramiding=4, initial_capital=10000, process_orders_on_close=true, commission_type=strategy.commission.percent, commission_value=0.002)



LB2 = input(30, title="Alım_Üst_Çizgi")
LB = input(90, title="Alım_Alt_Çizgi")
Barcolor=input(true,title="Barcolor")
Bgcolor=input(true,title="Bgcolor")
//////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////////////
RDirenc = ta.valuewhen(ta.cross(ta.hma(close, LB2), close), ta.highest(high, LB2), 1)
SDestek = ta.valuewhen(ta.cross(close, ta.hma(close, LB)), ta.lowest(low, LB), 1)



//plot(RDirenc,title="Resistance", color=#f7d707fc, linewidth =2)
//plot(SDestek,title="Support", color=#064df4, linewidth = 2)

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

LB22 = input(40, title="Satım_Üst_Çizgi")
LB1 = input(300, title="Satım_Alt_Çizgi")

Barcolor2=input(true,title="Barcolor2")
Bgcolor2=input(true,title="Bgcolor2")
//////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////////////
RDirenc2 = ta.valuewhen(ta.cross(ta.hma(close, LB22), close), ta.highest(high, LB22), 1)
SDestek2 = ta.valuewhen(ta.cross(close, ta.hma(close, LB1)), ta.lowest(low, LB1), 1)



//plot(RDirenc2,title="Resistance2", color=#f40a0afc, linewidth =2)
//plot(SDestek2,title="Support2", color=#0eed0e, linewidth = 2)

//colors=if(close>RDirenc, color= #008000,if(SDestek<close,color=#FFFF00,color=#FF0000))

aralik_yuzde_alis = ((RDirenc-SDestek)/SDestek)*100
fark = input(25.0, title="Alış Aralığı %")



aralik_yuzde_satis = ((RDirenc2-SDestek2)/SDestek2)*100
fark2 = input(45.0, title="Satış aralığı %")




buyProcess = input(0.12, "ALIM YERİ %")
//buyProcess2 = input(0.10, "ALIM YERİ-2 %")
//buyProcess3 = input(0.10, "ALIM YERİ-3 %")



buy1 = strategy.position_avg_price - (strategy.position_avg_price * buyProcess)

buy2 = buy1 - (strategy.position_avg_price * buyProcess)

buy3 = buy2 - (strategy.position_avg_price * buyProcess)

buy4 = buy3 - (strategy.position_avg_price * buyProcess)



//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
isLong1 = if ta.crossover(close, SDestek) and aralik_yuzde_alis < fark 
    1
else
    0

    
isLong2 = if ta.crossover(close, SDestek) and (close <=  buy1)
    1
else
    0

isLong3 = if ta.crossover(close, SDestek) and (close <=  buy2) 
    1
else
    0

isLong4 = if ta.crossover(close, SDestek) and (close <= buy3) 
    1
else
    0



message_long_entry  = input("long entry message")
message_long_exit   = input("long exit message")


fullProfit = input(2.00, "PROFİT SATIŞ SEVİYESİ")
profit = strategy.position_avg_price * fullProfit
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

strategy.entry(id = "BUY-1", direction = strategy.long, qty = 25, when = (isLong1 and strategy.position_size == 0), alert_message = message_long_entry)
strategy.entry(id = "BUY-2", direction = strategy.long, qty = 25, when = (isLong2 and strategy.position_size == 25), alert_message = message_long_entry)
strategy.entry(id = "BUY-3", direction = strategy.long, qty = 25, when = (isLong3 and strategy.position_size == 50), alert_message = message_long_entry)
strategy.entry(id = "BUY-4", direction = strategy.long, qty = 25, when = (isLong4 and strategy.position_size == 75), alert_message = message_long_entry)



buyclose1 = if  (close >= (strategy.position_avg_price + profit)) and aralik_yuzde_satis > fark2
    close
    

strategy.exit("EXİT",qty_percent = 100, stop = buyclose1)


aritmeticClose =  strategy.position_avg_price + profit
plot(aritmeticClose, color = color.rgb(248, 5, 240), linewidth = 1, style = plot.style_linebr)

Lebih banyak