Sample Strategy: MACD Crossover with trend filter options
MA Filter : Price Close Above MA, Search for Buy, Price Close Below MA, Search for Sell ADX Filter : Take trade only when ADX is above certain treshold MACD Signal : MACD Cross above signal line while under 0 line indicate Buy Signal MACD Cross below signal line while above 0 line indicate Sell Signal
----------------------------- Using Alert Module:
Enable Alert --> Enable TV's alert and plot signal to chart Alert Type --> Set to take Buy only, Sell only or Both alert
---------------------------- Using Backtest Module:
Enable Backtest --> Enable Backtest simulation Backtest Type --> Set to take Buy only, Sell only or Both SL Type --> ATR : Set SL in ATR times Multiplier below/above entry price Fixed : Set SL in fixed point below entry point (in 'Dollar'). e.g. for Stocks -> 0.5 equals to 50cent while for EURUSD currency -> 0.005 equal to 50 pips HiLo Bar : Set SL at highest/lowest wick of previous [x] bar plus/minus Fixed point. e.g. EURUSD HiLo=3 and Fixed Point = 0.0005, buy trade will place SL 5 Pips below lowest of previous 3 bar
SL ATR Period --> Set Lookback Period used for SL's ATR calculation SL ATR Multi --> Set ATR Multiplier for SL SL Fixed --> Set Fixed Level for SL (Use when SL Type is either Fixed or HiLo Bar) SL Bar --> Set Number of previous bar to check for SL placement TP RR Ratio --> Set TP based on RR multiplier. e.g. 2 means TP level will be twice further from entry point compared to Entry-SL distance.
Notes: The point is for preliminary testing, so it only supports 1 trade at a time and no Trailing Stop
---------------------------- Disclaimer: This script main objective is to create my personal indicator template so that i just have to modify the indicator module for preliminary testing in future.
Testing Alert Module so i can re-use it as template in future study/indicator Testing Visual Backtest Module so i can re-use it as template in future study/indicator
i believe using Strategy function is a better approach for this but the entry/exit level seems to be hit n miss (at least for me, still trying to figure what i did wrong) also, i rather code the strategy in other platform where i can use the more accurate tick data if i want to validate backtest statistics. My study scripts was built only to test/visualize an idea to see its viability and if it can be used to optimize existing strategy.
credit: ADX code are originally from "ADX and DI" by BeikabuOyaji although i re-wrote so i can have cleaner read and use RMA instead of SMA
릴리즈 노트
Backtesting & Trading Engine Signal Line • An invisible plot named "BTE Signal" is provided. It can be used as an entry signal when connected to the PineCoders Backtesting & Trading Engine (click to read their full documentation) as an external input. It will generate an entry whenever a marker is displayed.
i just found out about PineCoders very own Backtest Engine so i decided to enable it in my study template. Updated description as below:
Using [PineCoders] Backtest Engine Module: External Signal Protocol --> Set ESP State to send to "Backtesting & Trading Engine [PineCoders]" Signal With Filter --> Use this to send entry signal that already filtered by this study indicator (without stoploss level) Signal Without Filter --> Use this to send raw entry signal that are NOT YET FILTERED by this study indicator (without stoploss level) Signal and Stop With Filter --> Use this to send entry signal WITH StopLoss that already filtered by this study indicator (with stoploss level) Signal and Stop Without Filter --> Use this to send raw entry signal WITH StopLoss that are NOT YET FILTERED by this study indicator (with stoploss level)
Notes: Backtesting & Trading Engine [PineCoders] already have built-in Filter, Entries and Stop Level. e.g. Unselect all their filter state if only want to use custom filter and make sure send Signal with Filter (with or without SL level)
진정한 TradingView 정신에 따라, 이 스크립트의 저자는 트레이더들이 이해하고 검증할 수 있도록 오픈 소스로 공개했습니다. 저자에게 박수를 보냅니다! 이 코드는 무료로 사용할 수 있지만, 출판물에서 이 코드를 재사용하는 것은 하우스 룰에 의해 관리됩니다. 님은 즐겨찾기로 이 스크립트를 차트에서 쓸 수 있습니다.