Template Trailing Strategy

jason5480 Pro Telah dikemaskini   
This script is meant to be used as a generic template for new strategies. Take Profit, Stop Loss logic is provided out of the box with (or without) their trailing variations while the trailing for entry and exit orders can also be enabled and be configured!
Custom quantity risk management is provided along with the ability to set custom signal messages that can be send through webhook to your bot platform.
To create a new Strategy copy this script and replace the openLongPosition, closeLongPosition, openShortPosition, closeShortPosition variables under the STRATEGY section with your own logic.
Take some time to check the different options on all sections to have better understanding of the capabilities that script provide you for free!
Catatan Pelepasan:
  • Add the option to select different moving average types for fast and slow MA instead of a fixed SMA.
Catatan Pelepasan:
  • Make use of math_utils library
Catatan Pelepasan:
  • Add an option to ignore close signals from crossover/crossunder so users can play exclusively with stop loss and take profit configuration
  • Fix some typos
Catatan Pelepasan: Feature Release:
  • Now Strategy support two types of deal conditions (Internal and External). Internal is the "build-in" two MA cross over/under logic that is standalone. However, as proposed by @EltAlt now simple External deal conditions can also be constructed by this strategy! User can add his favorite indicator in the same chart as this strategy and use the output of this indicator as an External Input for the start and end Deal Conditions to open and close position and enter and exit orders.
  • Add option for different/secondary Stop Loss % and ATR Multipliers after the Take Profit Target is reached. As suggested by @PlusUltraTrading this will give more flexibility to the end user when he wants to apply more loose/strict stop loss rules after the initial take profit target was hit.

    At this point I want to thank all those who contributed with their ideas, comments and their personal time. This motivated me to build this template at its generic enough, but also useful for everyone current state. Use it wisely!
Catatan Pelepasan: FETURE RELEASE:
  • Now you can set multiple Take Profit Targets for each entry! The initial target may use different method that the additional step targets (e.g. set initial TP at 3ATR and the next target at +5% on top of the initial TP price)
  • Beatification of the Input tab with emojis and "tabs" when sub-menus are implied.
  • Minor Bug and typo fixes for previously released features.
  • Several refactorings in the code, added descriptions for each module.
Catatan Pelepasan: \nFix Release:
  • The minimum number of take profits can be 0
  • Some code cleanup
Catatan Pelepasan:
  • Add session time filter
  • Now user can chose between three different ATR trailing methods Static, Dynamic and Ladder
  • Fix a bug that caused entry and exit trailing to not monotonically follow the trend when an external input indicator was triggered a signal second time before the strategy enters or exit the position.
Catatan Pelepasan:
  • Add the option to close at market price at the end of a session
  • Some code refactoring
Catatan Pelepasan: Feature:
  • New trailing Stop Loss, Entry and Exit method called Local Extrema. This technique allow the user to set his target price in the local maximum/minimum price plus/minus some ticks.
  • New Quantity method that is strictly based on equity percentage (rather than the capital at risk percentage).
Catatan Pelepasan:
  • New option for Initial Take Profit target price to set it to the Local Extrema (minimum/maximum) plus/minus some ticks.
  • New implementation of the session filter now it is more versatile and accurate.
Catatan Pelepasan: Make Session filter cyclical to capture overnight sessions.
Catatan Pelepasan:
  • The convention for overnight session day now is the end day in order to match the build-in session logic
Catatan Pelepasan:
  • Fix a bug that causing Risk-Reward Take profit Method (RR) to not work correctly when Stop Loss Method was set to Local max/min (LOC)
Catatan Pelepasan:
  • Add ADX trend filter option
  • Add the ability to close early if the first take profit target is not hit within some bars from the entry
  • Add up to 5 TP alert messages that can be used
  • Now the user can use up tp 20 different variables in the alert messages that are passed as input to the strategy. Strategy will replace their current value before trigger the alert. Some of the variables are the TP, the SL prices and the quantities of entries and exits of the positions.
  • Use time_filtes library and string_variables
Catatan Pelepasan:
  • Add {%{RISK}} {@{TICKER}} {@{BASE}} {@{QUOTE}} alert message variables
Catatan Pelepasan:
  • Make trailing entry to use stop order instead of market
  • Make trailing exit to use stop order instead of market
  • Fix a bug that caused the very first quantity calculation to be wrong when the trailing entry was enabled
  • Fix some typos in the alert messages
  • Some code refactoring and optimizations
Catatan Pelepasan:
  • New feature: Cooldown! Now you can wait after the completion for a couple of bars before enter the next trade!
  • Replace deprecated "when=" with if statements in strategy calls
  • Fix some rounding numerical inconsistencies for take profit quantities
Catatan Pelepasan:
  • Minor code clean up
Catatan Pelepasan:
  • Add support for new signal indicator convention (see for more)
  • Add ticker prefix and post fix variables for the alert messages
  • Rephrase the default alert messages to demonstrate more string variables
  • Use qty_percent after TV team fixed the API taking into account the initial position size
  • Change fastMA default color to yellow
  • Change trailing entry price default color to blue
Catatan Pelepasan:
  • Huge refactoring in the Stop Loss section! Now Stop Loss consists of two modes that can be set independently. The Move and the Trailing modes.
  • Added the ability to move the Stop Loss multiple times when a new Take Profit target is reached
  • Added the ability to change the trailing distance parameters in a step like manner every time a new Take Profit target is reached (a more generic version of old "Use Sec %/Mul" feature)
  • Now you can select on which Take Profit target you will start the Stop Loss trailing for the "TP" Trailing Activation Mode.
  • Increased the maximum number of lines and labels that can be drawn to 300 and 200 respectively
  • Added new string variables {${ENTRY}}, {${CLOSE+}}, {${CLOSE+}}, {${OPEN}}, {${HIGH}}, {${LOW}}
  • Other minor fixes and optimizations
Catatan Pelepasan:
  • New "update" alerts were introduced. Now user is able to get a message when Stop Loss value is change, the same is try for trailing entry and exit.
  • Changed the way take profit target prices are calculated when they are used with trailing entry. Now the basis of calculations is the entry price (white line) instead of the price when the open position signal was triggered.
  • Add the option to refer to other than the exchange timezone in the "Filter - Time" settings.
  • Fixed a precision bug that caused the sum of all TPs amounts that were reached to not add up to the total percentage.
Catatan Pelepasan:
  • Added {${ENTRY+}} {${ENTRY-}} {${EXIT+}} and {${EXIT-}} string variables that can be used with and without trailing for long and shorts.
  • Update time_filters library
  • Some minor performance optimizations
Catatan Pelepasan: Happy 1.5K lines script!
  • Added new STATS section where statistics about the trades as a whole can be inspected. While TV backtest engine provides accurate statistics based on each order separately, usually you need to see the trade as a whole to be able to fine-tune your strategy!
  • Update time_filters library
  • Update string_variables library
  • Fix some annoying bugs
  • Changed some defaults to have better performance by default (Sorry for any inconvenience)
Have a nice holiday!
Catatan Pelepasan:
  • Update string_variables library. Percentage variables (%) were dopped. Use raw variables (#) instead and the "Percentage Range" checkbox to define the range of percentages to or
Catatan Pelepasan:
  • Minor tweaks to boost alert performance
Catatan Pelepasan:
  • Fix a bug that was causing stop loss messages to be empty when the take profit quantity was set to 100%
  • Some more optimizations
Catatan Pelepasan:
  • As a friendly remainder to use your own "custom signal indicator" for start and end deal conditions that match your own strategy logic, I added even more statistics and new metrics (feedback is always welcome!)
  • Change the settings so the order type (market, stop-limit) for entry and exit is independent from the trailing logic
  • For those who use stop-limit orders for entry and exit now they can send cancellation signals from their indicator (check "Two MA Signal Indicator" for more)
  • Moved the old Filters - Trend logic under the Strategy - Internal. Now those filters are not applied into the external logic coming from your indicator. If you used them in combination with your custom indicator before you have to MOVE THAT LOGIC to your own indicator too (sorry).
  • Now you can customize the colors of each label and line category on each section
  • Some bug fixes optimizations and other improvements made (as always)
  • Change some settings to better reflect the underlying functionality
  • Some aesthetic changes were also made
Catatan Pelepasan:
  • Added more strict validation criteria for the cancelation signals. Now a open/close should be in-progress to consider a cancel signal valid. This will also remove some visual clutter.
  • Added the option to choose what price to follow when trailing front/rear (high/low)
  • Added the option to choose on which TP to activate the move stop loss ONCE (first TP by default)
  • The ema of the internal strategy now use security in a "secure" way so it does not repaint in higher timeframes in real-time bars.
Skrip sumber terbuka

Dalam semangat TradingView yang sebenar, penulis skrip ini telah menerbitkannya dengan menggunakan sumber terbuka supaya pedagang-pedagang dapat memahami dan mengesahkannya. Sorakan kepada penulis! Anda dapat menggunakannya secara percuma tetapi penggunaan semula kod ini dalam penerbitan adalah dikawalselia oleh Peraturan Dalaman. Anda boleh menyukainya untuk menggunakannya pada carta.


Maklumat dan penerbitan adalah tidak dimaksudkan untuk menjadi, dan tidak membentuk, nasihat untuk kewangan, pelaburan, perdagangan dan jenis-jenis lain atau cadangan yang dibekalkan atau disahkan oleh TradingView. Baca dengan lebih lanjut di Terma Penggunaan.

Ingin menggunakan skrip ini pada carta?