
Belirli bir dönemdeki yüksek ve düşük fiyatlar arasındaki ortalama aralığı ölçen oynaklık göstergesi. Yönlü göstergelerin aksine ATR, yön belirtmeden piyasa oynaklığının büyüklüğünü ölçer.
Belirli bir dönemdeki yüksek ve düşük fiyatlar arasındaki ortalama aralığı ölçen oynaklık göstergesi. Yönlü göstergelerin aksine ATR, yön belirtmeden piyasa oynaklığının büyüklüğünü ölçer.
ATR, pozisyon büyüklüğü ve risk yönetimi için temeldir. Sabit durdurma (stop-loss) mesafeleri yerine, ATR tabanlı durdurmalar mevcut oynaklığa uyum sağlar: oynak piyasalarda daha geniş durdurmalar, sakin piyasalarda daha dar durdurmalar. Bu, normal oynaklık sırasında erken çıkışları önlerken gerçek dönüşlere karşı koruma sağlar.
Risk Management Strategies hakkında daha fazla bilgi edinin →import backtrader as bt
class ATRPositionSizing(bt.Strategy):
params = (('atr_period', 14), ('risk_multiple', 2.0), ('risk_pct', 0.02))
def __init__(self):
self.atr = bt.indicators.ATR(self.data, period=self.p.atr_period)
def next(self):
if not self.position:
# Entry signal (simplified)
if self.data.close[0] > self.data.close[-1]:
# Position size based on ATR
stop_distance = self.p.risk_multiple * self.atr[0]
risk_per_share = stop_distance
position_size = (self.broker.getvalue() * self.p.risk_pct) / risk_per_share
self.buy(size=position_size)
self.stop_price = self.data.close[0] - stop_distance
else:
# ATR-based trailing stop
if self.data.close[0] < self.stop_price:
self.close()| Parametre | Varsayılan | Açıklama |
|---|---|---|
| period | 14 | ATR bakış süresi |