ChartArt

Daily Close Comparison Strategy (by ChartArt via sirolf2009)

15525 뷰
2243
15525 35
Comparing daily close prices as a strategy.

This strategy is equal to the very popular "ANN Strategy" coded by sirolf2009(1) which calculates the percentage difference of the daily close price, but this bar-bone version works completely without his Artificial Neural Network (ANN) part.

Main difference besides stripping out the ANN is that my version uses close prices instead of OHLC4 prices, because they perform better in backtesting. And the default threshold is set to 0 to keep it simple instead of 0.0014 with a larger step value of 0.001 instead of 0.0001. Just like the ANN strategy this strategy goes long if the close of the current day is larger than the close price of the last day. If the inverse logic is true, the strategy goes short (last close larger current close). (2)

This basic strategy does not have any stop loss or take profit money management logic. And I repeat, the credit for the fundamental code idea goes to sirolf2009.


(2) Because the multi-time-frame close of the current day is future data, meaning not available in live-trading (also described as repainting), is the reason why this strategy and the original "ANN Strategy" coded by sirolf2009 perform so excellent in backtesting.

All trading involves high risk; past performance is not necessarily indicative of future results. Hypothetical or simulated performance results have certain inherent limitations. Unlike an actual performance record, simulated results do not represent actual trading. Also, since the trades have not actually been executed, the results may have under- or over-compensated for the impact , if any, of certain market factors, such as lack of liquidity. Simulated trading programs in general are also subject to the fact that they are designed with the benefit of hindsight. No representation is being made that any account will or is likely to achieve profits or losses similar to those shown.


(1) You can get the original code by sirolf2009 including the ANN as indicator here:



(1) and this is sirolf2009's very popular strategy version of his ANN:

즐겨찾기 스크립트에서 빼기 즐겨찾기 스크립트에 넣기
//@version=2
strategy("Daily Close Comparison Strategy (by ChartArt)", shorttitle="CA_-_Daily_Close_Strat", overlay=false)

// ChartArt's Daily Close Comparison Strategy
//
// Version 1.0
// Idea by ChartArt on February 28, 2016.
//
// This strategy is equal to the very
// popular "ANN Strategy" coded by sirolf2009,
// but without the Artificial Neural Network (ANN).
//
// Main difference besides stripping out the ANN
// is that I use close prices instead of OHLC4 prices.
// And the default threshold is set to 0 instead of 0.0014
// with a step of 0.001 instead of 0.0001.
//
// This strategy goes long if the close of the current day
// is larger than the close price of the last day.
// If the inverse logic is true, the strategy
// goes short (last close larger current close).
//
// This simple strategy does not have any
// stop loss or take profit money management logic.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 

threshold = input(title="Price Difference Threshold", type=float, defval=0, step=0.001)

getDiff() =>
    yesterday=security(tickerid, 'D', close[1])
    today=security(tickerid, 'D', close)
    delta=today-yesterday
    percentage=delta/yesterday
    
closeDiff = getDiff()
 
buying = closeDiff > threshold ? true : closeDiff < -threshold ? false : buying[1]

hline(0, title="zero line")

bgcolor(buying ? green : red, transp=25)
plot(closeDiff, color=silver, style=area, transp=75)
plot(closeDiff, color=aqua, title="prediction")

longCondition = buying
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = buying != true
if (shortCondition)
    strategy.entry("Short", strategy.short)
I was read all the comments, but I am still very appreciated your efforts, specially your generous. Trading involve a lot of unexpected events, although repaint can be happen but people should understand if there are a algo is always 100% win, who will lose money in the markets. ChartArt, you are one of the trader that I very appreciated, again thank you so much for sharing your great works =D
응답
I propose to remove the author with all his posts in view of the lack of meaning in them. In order not to turn the portal TradingView to TradingGarbage.
+1 응답
Does it repaint?
+17 응답
Hello! the indicator redraws your testimony?
응답
sir this stretegy is repaint??? and if i want to compare hour closed instead of daily close is it posible??? if it posible then pls help me ...
응답
@shiv_n, It is a repaint, probably does not work with version 3 of pine script
+3 응답
The strategy is not working. Signals are not reliable, can appear and disappear, a delay of several bars. Checked on the hourly timeframe
+1 응답
Off course it is not working in live trading the same as in backtesting. Please read the description text I wrote underneath the indicator and please also read my second comment underneath the strategy post. I mentioned several times that this strategy REPAINTS. Which is the effect you are describing.

This is the only strategy I shared on Tradingview which repaints and which is why I warned so many times about this problem.
You can read more about the repainting issue of certain strategies when you go to this other strategy linked below:

(This other strategy below does not repaint by the way. It wins all the time by only closing trades when the targeted profit has been achieved. I just deemed it a good place to discuss this related issue of strategies which seem to work so great in backtesting)
+2 응답
giorsims ChartArt
Hi, I tried changing the lines to:
threshold = input(title="Threshold", type=float, defval=0, step=1)

getDiff() =>
mod = ema(security(tickerid, 'D', close),2)
yesterday=mod
today=mod

Basically, putting ema inside I hope would make it stabilized and pushing yesterday/today 1 day further with close price, should really make the signal fully rely on past data, not on evolving/live data. Please tell me your view.
응답
giorsims giorsims
sorry, suppose to be yesterday=mod, today=mod
+2 응답
홈으로 스탁 스크리너 포렉스 스크리너 크립토 스크리너 이코노믹 캘린더 사용안내 차트 특징 프라이싱 하우스룰(내부규정) 모더레이터 웹사이트 & 브로커 솔루션 위젯 차팅 솔루션 도움 받기 기능 개발/개선 요청 블로그 & 뉴스 잦은물음 위키 트위터
프로화일 프로화일설정 계정 및 빌링 도움 받기 공개아이디어 팔로어 팔로잉 비밀메시지 채팅 로그아웃