Zarar Kes (Stop-Loss) ve Kar Al (Take-Profit)
"Cut your losses short and let your profits run." - Bu basit cümle, trading'de başarının özüdür. Stop-loss ve take-profit emirleri, duygusal kararlardan arınmış, disiplinli trading'in temel taşlarıdır. İstatistiklere göre, başarısız trader'ların %85'i stop-loss kullanmaz veya yanlış kullanır. Bu bölümde, stop-loss ve take-profit stratejilerinin bilimsel temellerini, pratik uygulamalarını ve ileri seviye tekniklerini detaylı olarak inceleyeceğiz.
Stop-Loss: Sermaye Korumanın Kalkanı
1. Stop-Loss Nedir ve Neden Kritiktir?
Stop-loss, belirlenen zarar seviyesinde pozisyonu otomatik kapatan emirdir. Trading'de "umut" stratejisi değildir ve stop-loss bu gerçeği kabul etmenin matematiksel ifadesidir.
Stop-Loss'un Psikolojik Faydaları:
- Kayıp korkusunu azaltır (maksimum zarar bilinir)
- Objektif çıkış sağlar (duygusal karar yok)
- Gece rahat uyumanızı sağlar
- "Bagaj" pozisyonları önler
2. Stop-Loss Türleri ve Kullanım Alanları
a) Sabit Stop-Loss
Giriş: 100 TL
Stop: 95 TL
Risk: 5 TL (%5)
Avantaj: Basit ve net
Dezavantaj: Volatilite dikkate alınmaz
b) Yüzdesel Stop-Loss
Giriş: 100 TL
Stop: %2 = 98 TL
Kullanım: Farklı fiyatlı varlıklar için standart risk
c) Teknik Stop-Loss
- Destek/Direnç altı/üstü
- Moving Average altı/üstü
- Trend çizgisi kırılımı
- Önceki dip/tepe seviyesi
Avantaj: Piyasa yapısına uyumlu
d) Zaman Bazlı Stop-Loss
"3 gün içinde hedeflenen hareket olmazsa çık"
Kullanım: Sermaye verimliliği için
Volatilite Tabanlı Stop-Loss - ATR Metodu
1. ATR (Average True Range) Nedir?
ATR, J. Welles Wilder Jr. tarafından geliştirilen, piyasa volatilitesini ölçen göstergedir. True Range, aşağıdaki üç değerin en büyüğüdür:
TR = MAX[
(High - Low),
|High - Previous Close|,
|Low - Previous Close|
]
ATR = Moving Average of TR (genelde 14 periyot)
2. ATR Stop-Loss Hesaplama
Long Pozisyon Stop = Entry Price - (ATR × Multiplier)
Short Pozisyon Stop = Entry Price + (ATR × Multiplier)
Örnek:
Entry: 100 TL
ATR(14): 2 TL
Multiplier: 2.5
Long Stop = 100 - (2 × 2.5) = 95 TL
3. ATR Multiplier Seçimi
| Market Tipi | ATR Multiplier | Açıklama |
|---|---|---|
| Trend Following | 2.5 - 3.0 | Geniş stop, whipsaw önleme |
| Swing Trading | 2.0 - 2.5 | Orta seviye |
| Day Trading | 1.5 - 2.0 | Sıkı stop |
| Scalping | 1.0 - 1.5 | Çok sıkı |
| Volatile Markets | 3.0 - 4.0 | Ekstra geniş |
4. Dinamik ATR Stop-Loss Kodu
def calculate_atr_stop(data, period=14, multiplier=2.5):
# True Range hesapla
data['H-L'] = data['High'] - data['Low']
data['H-PC'] = abs(data['High'] - data['Close'].shift(1))
data['L-PC'] = abs(data['Low'] - data['Close'].shift(1))
data['TR'] = data[['H-L', 'H-PC', 'L-PC']].max(axis=1)
# ATR hesapla
data['ATR'] = data['TR'].rolling(window=period).mean()
# Stop seviyeleri
data['Long_Stop'] = data['Close'] - (data['ATR'] * multiplier)
data['Short_Stop'] = data['Close'] + (data['ATR'] * multiplier)
return data
Trailing Stop-Loss Stratejileri
1. Basit Trailing Stop
Initial Stop: Entry - 100 pip
Trailing: Her +50 pip kârda, stop +50 pip yukarı
Örnek akış:
Entry: 1.1000, Stop: 1.0900
Price: 1.1050, Stop: 1.0950 (moved up)
Price: 1.1100, Stop: 1.1000 (breakeven)
Price: 1.1150, Stop: 1.1050 (profit locked)
2. ATR Trailing Stop
ATR trailing stop, volatiliteye göre dinamik olarak ayarlanır:
def atr_trailing_stop(price, atr, multiplier, position_type):
if position_type == 'long':
stop = price - (atr * multiplier)
# Stop sadece yukarı hareket eder
stop = max(stop, previous_stop)
else: # short
stop = price + (atr * multiplier)
# Stop sadece aşağı hareket eder
stop = min(stop, previous_stop)
return stop
3. Chandelier Exit
Chandelier Exit, en yüksek/düşük seviyeden ATR bazlı trailing stop:
Long Stop = Highest(High, Period) - ATR × Multiplier
Short Stop = Lowest(Low, Period) + ATR × Multiplier
Örnek (22 periyot):
22-bar High: 105 TL
ATR(22): 2 TL
Multiplier: 3
Stop = 105 - (2 × 3) = 99 TL
4. Parabolic SAR Trailing
Parabolic SAR, ivmelenen piyasalar için ideal:
SAR(n+1) = SAR(n) + AF × (EP - SAR(n))
AF = Acceleration Factor (0.02 başlar, 0.20'ye kadar)
EP = Extreme Point (trend yönündeki en uç nokta)
5. Breakeven ve Ötesi
Breakeven Stratejisi:
Rule: +1R kârda stop'u entry'ye taşı
Örnek:
Entry: 100, Initial Stop: 95 (Risk: 5 TL)
Target 1: 105 (+1R)
Price hits 105 → Move stop to 100
Kademeli Trailing:
+0.5R → Stop to -0.5R
+1R → Stop to Breakeven
+2R → Stop to +1R
+3R → Stop to +2R
Take-Profit Stratejileri
1. Risk/Reward Bazlı Take-Profit
Klasik R:R Oranları:
1:1 → %50 win rate'de başabaş
1:2 → %33 win rate yeterli
1:3 → %25 win rate yeterli
Örnek:
Risk: 50 pip
TP1: 50 pip (1:1)
TP2: 100 pip (1:2)
TP3: 150 pip (1:3)
2. Fibonacci Extension Take-Profit
Swing Low: 100
Swing High: 150
Retracement to: 130
Fibonacci Extensions:
1.272 → 163.6
1.618 → 180.9
2.618 → 230.9
3. ATR Bazlı Take-Profit
Conservative: Entry + (1.5 × ATR)
Standard: Entry + (2.5 × ATR)
Aggressive: Entry + (4 × ATR)
Örnek:
Entry: 100, ATR: 2
TP1: 103 (1.5 × ATR)
TP2: 105 (2.5 × ATR)
TP3: 108 (4 × ATR)
4. Kademeli Çıkış Stratejisi
Position: 3 lot
TP1 (1:1): 1 lot kapat
TP2 (1:2): 1 lot kapat
TP3 (1:3+): Trailing stop ile devam
Avantajları:
- Risk azaltma
- Psikolojik rahatlama
- Trend yakalama potansiyeli
5. Dinamik Take-Profit
Market Volatilitesine Göre:
def dynamic_take_profit(entry, atr, market_condition):
if market_condition == 'trending':
tp_multiplier = 4.0
elif market_condition == 'ranging':
tp_multiplier = 2.0
else: # volatile
tp_multiplier = 3.0
return entry + (atr * tp_multiplier)
Risk/Reward Optimizasyonu
1. Minimum Kabul Edilebilir R:R Oranları
| Trading Stili | Min R:R | Açıklama |
|---|---|---|
| Scalping | 1:1 | Yüksek win rate gerekli |
| Day Trading | 1:1.5 | Dengeli yaklaşım |
| Swing Trading | 1:2 | Standart |
| Position Trading | 1:3+ | Trend takibi |
2. Win Rate ve R:R İlişkisi
Breakeven Win Rate = 1 / (1 + Reward/Risk)
Örnekler:
R:R 1:1 → %50 win rate
R:R 1:2 → %33 win rate
R:R 1:3 → %25 win rate
3. Expectancy Hesaplama
Expectancy = (Win% × Avg Win) - (Loss% × Avg Loss)
Örnek:
Win Rate: %40
Avg Win: 3R
Avg Loss: 1R
Expectancy = (0.4 × 3) - (0.6 × 1) = 1.2 - 0.6 = +0.6R
Her trade'de ortalama +0.6R kazanç beklentisi
İleri Seviye Stop-Loss Teknikleri
1. Volatility Stop
def volatility_stop(close, atr, constant=3.0):
# Volatility Stop hesaplama
vs_up = close - (constant * atr)
vs_down = close + (constant * atr)
# Trend belirleme
if close > vs_up:
trend = 1 # Uptrend
stop = vs_up
else:
trend = -1 # Downtrend
stop = vs_down
return stop, trend
2. Keltner Channel Stop
Middle Line = EMA(20)
Upper Band = EMA + (ATR × 2)
Lower Band = EMA - (ATR × 2)
Long Stop: Lower Band
Short Stop: Upper Band
3. Market Structure Stop
Uptrend Stop Seviyeleri:
1. Son Higher Low altı
2. Önemli destek seviyesi
3. 50 EMA altı
4. Trend çizgisi altı
En yakın olanı seç
4. Time-Based Dynamic Stop
def time_decay_stop(entry_price, initial_stop, hours_in_trade):
# Her saat için stop'u %0.1 sıkılaştır
decay_rate = 0.001 * hours_in_trade
if position_type == 'long':
new_stop = initial_stop + (entry_price - initial_stop) * decay_rate
else:
new_stop = initial_stop - (initial_stop - entry_price) * decay_rate
return new_stop
Stop-Loss Yerleştirme Hataları ve Çözümleri
1. Yaygın Hatalar
a) Çok Sıkı Stop:
- Problem: Erken stop-out
- Çözüm: ATR bazlı stop kullan
b) Yuvarlak Sayılarda Stop:
- Problem: Stop hunting
- Çözüm: 100.00 yerine 99.87 gibi
c) Gösterge Tam Üstünde Stop:
- Problem: Herkes aynı yerde
- Çözüm: Buffer ekle (5-10 tick)
d) Mental Stop:
- Problem: Disiplin eksikliği
- Çözüm: Her zaman gerçek emir gir
2. Stop Hunting'den Korunma
Anti-Stop Hunting Teknikleri:
1. Likidite Ceplerinden Kaçın:
- Round numbers (100, 50, 00)
- Obvious S/R levels
- Previous day high/low
2. Buffer Ekle:
Normal Stop: 99.00
Buffer Stop: 98.85 (15 tick buffer)
3. Time-Based Entry:
Stop hunting genelde ilk 30 dakika
Bekle ve gir
Take-Profit Optimizasyon Teknikleri
1. Partial Profit Matrix
| Seviye | Miktar | Sebep | Risk Durumu |
|---|---|---|---|
| 1:1 | %30 | Risk azaltma | Breakeven |
| 1:2 | %30 | Kar kilitleme | Risk-free |
| 1:3 | %20 | Trend devam | Trailing |
| Runner | %20 | Big wins | Full trailing |
2. Market Condition Based TP
def adaptive_take_profit(entry, atr, adx, volume_ratio):
# ADX > 25: Trending market
if adx > 25:
tp_multiplier = 3.0 if volume_ratio > 1.5 else 2.5
# ADX < 25: Ranging market
else:
tp_multiplier = 1.5 if volume_ratio < 0.8 else 2.0
return entry + (atr * tp_multiplier)
3. News-Adjusted TP/SL
High Impact News Ayarlamaları:
Pre-News:
- Widen stops: Normal × 1.5
- Reduce position: 50%
- Set bracket orders
Post-News:
- Wait 5 min for volatility
- Use wider ATR multiplier
- Consider binary outcome
Backtest ve Optimizasyon
1. Stop-Loss Effectiveness Ratio
SL Effectiveness = Avoided Losses / Premature Stops
Hedef: > 2.0
Avoided Loss: Stop sonrası %10+ düşüş
Premature Stop: Stop sonrası hedef yönde %5+ hareket
2. Take-Profit Efficiency
TP Efficiency = Actual Profit / Maximum Possible Profit
Örnek:
Entry: 100, Exit: 110, High: 115
Efficiency = 10/15 = %67
Hedef: > %60
3. Monte Carlo Stop-Loss Testi
def monte_carlo_stop_test(strategy, iterations=10000):
results = []
for i in range(iterations):
# Random entry points
entries = generate_random_entries()
# Test different stop levels
for stop_multiplier in [1.5, 2.0, 2.5, 3.0]:
profit = test_strategy(entries, stop_multiplier)
results.append((stop_multiplier, profit))
# Find optimal multiplier
optimal = max(results, key=lambda x: x[1])
return optimal
Psikolojik Faktörler ve Çözümler
1. Stop-Loss Hareket Ettirme Hastalığı
Problem: Zarar yaklaşınca stop'u geriye alma Çözüm:
- OCO (One Cancels Other) emirleri kullan
- Stop-loss'u "kutsal" kabul et
- Hareket ettirme = Yeni trade gibi düşün
2. Erken Kar Alma Sendromu
Problem: Küçük kârda panik kapatma Çözüm:
- Partial profit planı
- Screen'den uzaklaş
- Alert kur, chart izleme
3. Breakeven Obsesyonu
Problem: Her trade'i breakeven'a getirme takıntısı Çözüm:
- İstatistiksel düşün
- R-multiple odaklı ol
- Tek trade değil, seri düşün
Broker ve Platform Considerasyonları
1. Emir Türleri
Stop-Limit vs Stop-Market:
Stop-Market:
- Kesin execution
- Slippage riski
- Volatil piyasalarda kullan
Stop-Limit:
- Fiyat kontrolü
- Execution garantisi yok
- Sakin piyasalarda kullan
2. Platform Özellikleri
Gelişmiş Stop-Loss Özellikleri:
- Trailing stop
- Guaranteed stop (ücretli)
- If-Done orders
- OCO orders
- Contingent orders
3. Broker Güvenilirliği
Stop-Loss Güvenlik Kontrolleri:
□ Negative balance protection
□ Guaranteed stop option
□ No dealing desk
□ Regülasyon durumu
□ Stop-loss execution hızı
Özet: SL/TP Altın Kuralları
- Stop-loss tartışılmaz, her trade'de olmalı
- ATR bazlı stop, sabit stop'tan üstün
- Minimum R:R oranı 1:1.5
- Partial profit al, runner bırak
- Stop'u geriye alma, sadece kâr yönünde
- Volatiliteye göre adapt ol
- Breakeven takıntısından kurtul
- Stop hunting'e karşı buffer kullan
- Mental stop = Felaket reçetesi
- Test et, optimize et, uygula
"The first rule of trading is to protect your capital. The second rule is to never forget the first rule. Stop-loss is not a suggestion, it's a survival tool." - Anonymous Profitable Trader
📚 İleri Okuma & Kaynaklar