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 TipiATR MultiplierAçıklama
Trend Following2.5 - 3.0Geniş stop, whipsaw önleme
Swing Trading2.0 - 2.5Orta seviye
Day Trading1.5 - 2.0Sıkı stop
Scalping1.0 - 1.5Çok sıkı
Volatile Markets3.0 - 4.0Ekstra 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 StiliMin R:RAçıklama
Scalping1:1Yüksek win rate gerekli
Day Trading1:1.5Dengeli yaklaşım
Swing Trading1:2Standart
Position Trading1: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

SeviyeMiktarSebepRisk Durumu
1:1%30Risk azaltmaBreakeven
1:2%30Kar kilitlemeRisk-free
1:3%20Trend devamTrailing
Runner%20Big winsFull 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ı

  1. Stop-loss tartışılmaz, her trade'de olmalı
  2. ATR bazlı stop, sabit stop'tan üstün
  3. Minimum R:R oranı 1:1.5
  4. Partial profit al, runner bırak
  5. Stop'u geriye alma, sadece kâr yönünde
  6. Volatiliteye göre adapt ol
  7. Breakeven takıntısından kurtul
  8. Stop hunting'e karşı buffer kullan
  9. Mental stop = Felaket reçetesi
  10. 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