리소스 로딩... 로딩...

MacD 사용자 지정 표시기 - 여러 시간 프레임 + 모든 가능한 옵션!

저자:차오장, 날짜: 2022-05-06 20:46:48
태그:MACD

정규 MACD 지표와 히스토그램 0선 위와 아래 방향에 기반한 4 색상을 그래프 업데이트는 체크 박스 옵션, MacD & 신호 라인 표시, 신호 라인의 교차에 기반한 MacD 라인의 색상의 변경을 허용합니다. MACD와 신호 라인의 교차점에 있는 점들을 표시합니다. 히스토그램은 4가지 색상 또는 1가지 색상을 표시할 수 있습니다. 히스토그램을 켜고 끄세요. 기술 지원에 있는 그 놀라운 사람에게 특별한 감사를 전합니다. 기술 지원 기능은 표시자의 기본 시간 프레임을 차트 시간 프레임에 설정하는 방법에 대해 보여주었습니다. 다른 시간 프레임을 선택할 수 있습니다. 그건 그렇고, 저는 완전히 공개합니다. 저는 완전히 훔쳤어요.

재검토

img


/*backtest
start: 2021-05-05 00:00:00
end: 2022-05-04 23:59:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Created by user ChrisMoody updated 4-10-2014
//Regular MACD Indicator with Histogram that plots 4 Colors Based on Direction Above and Below the Zero Line
//Update allows Check Box Options, Show MacD & Signal Line, Show Change In color of MacD Line based on cross of Signal Line.
//Show Dots at Cross of MacD and Signal Line, Histogram can show 4 colors or 1, Turn on and off Histogram.
//Special Thanks to that incredible person in Tech Support whoem I won't say you r name so you don't get bombarded with emails
//Note the feature Tech Support showed me on how to set the default timeframe of the indicator to the chart Timeframe, but also allow you to choose a different timeframe.
//By the way I fully disclose that I completely STOLE the Dots at the MAcd Cross from "TheLark"

study(title="CM_MacD_Ult_MTF", shorttitle="CM_Ult_MacD_MTF")
source = close
useCurrentRes = input(true, title="Use Current Chart Resolution?")
resCustom = input(title="Use Different Timeframe? Uncheck Box Above", defval="60")
smd = input(true, title="Show MacD & Signal Line? Also Turn Off Dots Below")
sd = input(true, title="Show Dots When MacD Crosses Signal Line?")
sh = input(true, title="Show Histogram?")
macd_colorChange = input(true,title="Change MacD Line Color-Signal Line Cross?")
hist_colorChange = input(true,title="MacD Histogram 4 Colors?")

res = useCurrentRes ? timeframe.period : resCustom

fastLength = input(12, minval=1), slowLength=input(26,minval=1)
signalLength=input(9,minval=1)

fastMA = ta.ema(source, fastLength)
slowMA = ta.ema(source, slowLength)

outMacD = fastMA - slowMA
outSignal = ta.sma(outMacD, signalLength)
outHist = outMacD - outSignal

//outMacD = request.security(timeframe.period, res, mymacd)
//outSignal = request.security(timeframe.period, res, signal)
//outHist = request.security(timeframe.period, res, hist)

histA_IsUp = outHist > outHist[1] and outHist > 0
histA_IsDown = outHist < outHist[1] and outHist > 0
histB_IsDown = outHist < outHist[1] and outHist <= 0
histB_IsUp = outHist > outHist[1] and outHist <= 0

//MacD Color Definitions
macd_IsAbove = outMacD >= outSignal
macd_IsBelow = outMacD < outSignal

plot_color = hist_colorChange ? histA_IsUp ? color.aqua : histA_IsDown ? color.blue : histB_IsDown ? color.red : histB_IsUp ? color.maroon :color.yellow :color.gray
macd_color = macd_colorChange ? macd_IsAbove ? color.lime : color.red : color.red
signal_color = macd_colorChange ? macd_IsAbove ? color.yellow : color.yellow : color.lime

circleYPosition = outSignal
 
plot(smd and outMacD ? outMacD : na, title="MACD", color=macd_color, linewidth=4)
plot(smd and outSignal ? outSignal : na, title="Signal Line", color=signal_color, style=plot.style_line ,linewidth=2)
//plot(sh and outHist ? outHist : na, title="Histogram", color=plot_color, style=histogram, linewidth=4)
plot(sd and ta.cross(outMacD, outSignal) ? circleYPosition : na, title="Cross", style=plot.style_circles, linewidth=4, color=macd_color)
//hline(0, '0 Line', linestyle=hline.style_solid, linewidth=2, color=color.white)

if outMacD > outSignal and math.abs(outMacD - outSignal) >90
    strategy.entry("entry long", strategy.long)
else if outMacD < outSignal and math.abs(outMacD - outSignal) >90
    strategy.entry("entry short", strategy.short)
    

관련

더 많은