
Die vierstufige BIST-Aktien-Quantitative-Acquisition-Strategie ist eine Strategie, bei der die Volatilität in vier Phasen gekauft wird, in Bereichen gekauft wird, in denen der Markt in Schwierigkeiten ist, und in Bereichen verkauft wird, in denen die Börsen gestiegen sind. Die Strategie ist für Aktien mit erheblicher Volatilität geeignet, um durch die Teilnahme an den Kosten eine bessere Kontrolle zu erzielen.
Die Strategie berechnet zunächst die Widerstands- und die Unterstützungslinie. Die Widerstandslinie wird durch die Kreuzung der Schwingungsmittellinie mit dem Hochpreis und dem Schließungspreis bestimmt, die Unterstützung durch die Kreuzung der Schwingungsmittellinie mit dem Schließungspreis und dem Tiefpreis.
Wenn der Preis unter die Unterstützung fällt, wird ein Kauf von 25% der Positionen in der ersten Stufe getätigt, wenn der Preis von der Widerstandslinie innerhalb des eingestellten Kaufbereichs liegt. In der Nähe des Kaufpreises in der ersten Stufe wird dann ein erneuter Kauf von 25% der Positionen getätigt.
Wenn der Aktienpreis das Doppelte der Eröffnungskosten übersteigt, wird der vollständige Ausstieg durchgeführt.
Die Aktienpreise fallen weiter und können nicht aufhören zu verlieren, was zu größeren Verlusten führen könnte.
Fehlende Parameter, mehrere Kaufpunkte zu nahe beieinander, keine Kostenverteilung möglich
Der Stop-Loss-Punkt ist zu groß, um die Verluste effektiv zu kontrollieren.
Anpassung der Parameter an die verschiedenen Arten von Aktien, um den Kaufbereich besser an die Merkmale der Aktie anzupassen
Hinzufügen von Volatilitätsindikatoren und Kauf bei steigender Volatilität
Optimierung von Stop-Off-Methoden, statt Stop-Off-Verfolgung, für höhere Erträge
Erhöhung der Stop-Loss-Line-Einstellung, um Verluste zu stoppen, wenn der Preis eine bestimmte Ebene nach unten überschreitet
Die vierstufige BIST-Aktien-Quantitative-Acquisition-Strategie ist im Allgemeinen eine Strategie, die sich sehr gut für populäre Konzeptaktien eignet. Durch die Gruppengründung ist es möglich, die Volatilität der Aktien effektiv zu nutzen und bessere Kosten zu erzielen, wenn die Preise zurückgehen. Gleichzeitig macht die vernünftige Stop-and-Loss-Einstellung die Strategie auch besser in der Risikokontrolle.
/*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)