Penulis:ChaoZhang, Tanggal: 2024-01-25 12:50:12
Tag:

img

Gambaran umum

Strategi Stop Loss Trailing yang cerdas adalah strategi yang secara otomatis menyesuaikan titik stop loss berdasarkan perubahan harga. Ini menggabungkan logika indikator SAR dan menyesuaikan garis stop loss trailing ketika harga mencapai titik tinggi atau rendah baru untuk mencapai kontrol penarikan maksimum.

Prinsip Strategi

Logika inti dari strategi ini adalah untuk secara otomatis menyesuaikan garis stop loss berdasarkan indikator SAR. Secara khusus, ia mendefinisikan empat variabel:

  • EP: Titik Ekstrim
  • SAR: Titik Stop Loss saat ini
  • AF: Step Factor, digunakan untuk mengontrol ukuran penyesuaian garis stop loss
  • Uptrend Flag: Untuk menilai apakah saat ini tren naik atau turun

Selama tren naik, garis stop loss akan terus bergerak ke atas untuk mengikuti harga naik. Ketika harga berubah menjadi tren turun, garis stop loss tetap tidak berubah sampai tren naik berikutnya.

Besarnya penyesuaian garis stop loss dikendalikan oleh Step Factor AF. AF akan meningkat ketika titik stop loss baru berhasil ditetapkan, sehingga memperluas besarnya penyesuaian berikutnya.

Keuntungan

Keuntungan terbesar dari strategi ini adalah bahwa ia dapat secara cerdas menyesuaikan titik stop loss sesuai dengan fluktuasi pasar, sambil memastikan ruang keuntungan yang cukup dan meminimalkan penarikan maksimum sebanyak mungkin. Dibandingkan dengan metode stop loss statis tradisional, ia dapat lebih baik menangkap tren harga.

Secara khusus, ada keuntungan utama:

  1. Mengurangi Penarikan Maksimum: Penyesuaian cerdas dari garis stop loss dapat keluar sebelum pembalikan tren untuk memaksimalkan perlindungan keuntungan yang direalisasikan
  2. Capture Trends: Garis stop loss akan menyesuaikan dengan titik tertinggi atau terendah baru dan secara otomatis mengikuti tren harga
  3. Parameter yang dapat disesuaikan: Pengguna dapat menyesuaikan nilai langkah AF dan nilai awal berdasarkan preferensi risiko mereka sendiri untuk mengontrol sensitivitas penyesuaian stop loss

Analisis Risiko

Ada juga beberapa risiko yang harus diperhatikan untuk strategi ini:

  1. Terlalu sensitif: Jika penyesuaian langkah AF terlalu besar atau nilai awal terlalu kecil, garis stop loss akan terlalu sensitif dan dapat dipicu oleh kebisingan pasar jangka pendek
  2. Kesempatan yang hilang: Memicu stop loss terlalu dini juga dapat mengakibatkan kehilangan peluang menguntungkan dari kenaikan terus
  3. Pemilihan parameter: Pengaturan parameter yang tidak tepat juga akan mempengaruhi kinerja strategi dan kebutuhan penyesuaian untuk pasar yang berbeda

Arahan Optimasi

Strategi ini juga dapat dioptimalkan dalam aspek berikut:

  1. Kombinasi Dengan Indikator Lainnya: Tahan penyesuaian garis stop loss ketika indikator siklus utama mengeluarkan sinyal untuk menghindari stop loss prematur sebelum pembalikan tren
  2. Tambahkan Parameter Self-Adaptive Module: Otomatis mengoptimalkan parameter berdasarkan data historis menggunakan algoritma pembelajaran mesin
  3. Stop Loss Multi-Level: Atur beberapa garis stop loss untuk melacak berbagai besar fluktuasi pasar

Kesimpulan

Strategi Stop Loss Trailing yang cerdas menyesuaikan posisi garis stop loss secara real time dengan mensimulasikan logika operasi indikator SAR. Sementara melindungi keuntungan, ia juga meminimalkan kemungkinan peluang yang hilang sebanyak mungkin.

Dibandingkan dengan strategi stop loss tetap tradisional, strategi ini dapat lebih baik beradaptasi dengan perubahan pasar dan lebih fleksibel. Melalui pengaturan parameter khusus, pengguna dapat memilih mode stop loss yang sesuai dengan preferensi risiko mereka sendiri.

Tentu saja, ada juga ruang optimasi parameter tertentu untuk strategi ini, dan efek yang lebih baik yang dapat dicapai dengan menggabungkan indikator lain.


/*backtest
start: 2024-01-17 00:00:00
end: 2024-01-24 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Lucid SAR Strategy", shorttitle="Lucid SAR Strategy", overlay=true)

// Full credit to Sawcruhteez, Lucid Investment Strategies LLC and Casey Bowman.
// This is a strategy version of the Lucid SAR indicator created by the above-mentioned parties.
// Original version of the indicator: https://www.tradingview.com/script/OkACQQgL-Lucid-SAR/

// Branded under the name "Lucid SAR" 
// As agreed to with Lucid Investment Strategies LLC on July 9, 2019
// https://lucidinvestmentstrategies.com/


// Created by Casey Bowman on July 4, 2019

// MIT License

// Copyright (c) 2019 Casey Bowman

// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:

// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.

// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.


AF_initial = input(0.02)
AF_increment = input(0.02)
AF_maximum = input(0.2)


// start with uptrend
uptrend = true
newtrend = false
EP = high
SAR = low
AF = AF_initial

if not na(uptrend[1]) and not na(newtrend[1])
    if uptrend[1]
        EP := max(high, EP[1])
    else
        EP := min(low, EP[1])
    if newtrend[1]
        AF := AF_initial
    else
        if EP != EP[1]
            AF := min(AF_maximum, AF[1] + AF_increment)
        else
            AF := AF[1]
    SAR := SAR[1] + AF * (EP - SAR[1])
    if uptrend[1]
        if newtrend
            SAR := max(high, EP[1])
            EP := min(low, low[1])
        else
            SAR := min(SAR, low[1])
            if not na(low[2])
                SAR := min(SAR, low[2])
            if SAR > low
                uptrend := false
                newtrend := true
                SAR := max(high, EP[1])
                EP := min(low, low[1])
            else
                uptrend := true
                newtrend := false
    else
        if newtrend
            SAR := min(low, EP[1])
            EP := max(high, high[1])
        else
            SAR := max(SAR, high[1])
            if not na(high[2])
                SAR := max(SAR, high[2])
            if SAR < high
                uptrend := true
                newtrend := true
                SAR := min(low, EP[1])
                EP := max(high, high[1])
            else
                uptrend := false
                newtrend := false
            
        

plot(SAR, color = color.blue, style = plot.style_cross, linewidth = 2)

if (uptrend)
    strategy.entry("PBSARLE", strategy.long, comment="PBSARLE")
if (newtrend)
    strategy.entry("PBSARSE", strategy.short, comment="PBSARSE")

Lebih banyak