Основная логика этой стратегии заключается в автоматической корректировке линии стоп-лосса на основе индикатора SAR. В частности, она определяет четыре переменные:
Во время восходящего тренда линия стоп-лосса будет продолжать двигаться вверх, чтобы отслеживать растущую цену.
Величина регулировки линии стоп-потери контролируется шаговым фактором AF. AF увеличивается, когда удачно устанавливается новая точка стоп-потери, тем самым увеличивая следующую величину регулировки.
Самое большое преимущество этой стратегии заключается в том, что она может интеллектуально регулировать точку остановки потери в соответствии с колебаниями рынка, обеспечивая при этом достаточное пространство прибыли и минимизируя максимальное снижение максимально возможно.
В частности, существуют основные преимущества:
Для этой стратегии также существуют некоторые риски:
Стратегия также может быть оптимизирована в следующих аспектах:
Интеллектуальная стратегия отслеживания стоп-лосса регулирует позиции линии стоп-лосса в режиме реального времени, имитируя операционную логику индикатора SAR. В то же время защищая прибыль, она также минимизирует вероятность упущенных возможностей.
По сравнению с традиционными фиксированными стратегиями стоп-лосса, эта стратегия может лучше адаптироваться к изменениям рынка и более гибкая.
Конечно, для этой стратегии есть также определенные возможности оптимизации параметров и улучшенные эффекты, которые могут быть достигнуты путем объединения других индикаторов.
/*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")