커뮤니티

문의드립니다

프로필 이미지
새벽에
2023-02-01 11:13:17
833
글번호 165909
답변완료

첨부 이미지

안녕하세요? 아래지표식을 챠트에적용시 첨부사진처럼 선으로적용시와 막대로적용시 봉1개의 색상차이가있습니다 막대그래프는 무시하여주시고 선그래프기준으로 사진에표시한것과 같이(선의기울기,양선음선에따라) 매수매도 시스템식을 구합니다 (신호발생은 사진과달리 1봉 다음 에 발생하도록 부탁드립니다 ) 감사드립니다 input : inp_Sensitivity(0.01),inp_HiLo_Lookback(5), inp_Slow_MA_Period(26),inp_Slow_MA_Method("EMA"), inp_Fast_MA_Period(12),inp_Fast_MA_Method("EMA"), inp_Signal_MA_Period(9),inp_Signal_MA_Method("EMA"); var : inp_Source(0),Hbarssince(-1),Lbarssince(-1),HiLo_Range(0),MA_Slow_Deviation(0); var : MA_Fast(0),MA_Slow(0),MA_Slow_ATR(0); Var : SumSqrt(0), Avgv(0), cnt(0),Histogrm(0),Main_Line(0),Signal_Line(0),Histogrm_Color(0); inp_Source = close; if inp_Fast_MA_Method == "SMA" Then MA_Fast = ma(inp_Source, inp_Fast_MA_Period); Else MA_Fast = ema(inp_Source, inp_Fast_MA_Period); if High == highest(H,inp_HiLo_Lookback) Then Hbarssince = 0; Else { if Hbarssince >= 0 Then Hbarssince = Hbarssince+1; } if low == Lowest(L,inp_HiLo_Lookback) Then Lbarssince = 0; Else { if Lbarssince >= 0 Then Lbarssince = Lbarssince+1; } HiLo_Range = abs(Hbarssince-Lbarssince) * PriceScale * 100000; if inp_Slow_MA_Method == "SMA" Then MA_Slow = ma(inp_Source, inp_Slow_MA_Period); Else MA_Slow = ema(inp_Source, inp_Slow_MA_Period); If inp_Slow_MA_Period != 0 Then { Avgv = MA_Slow; SumSqrt = 0; For cnt = 0 To inp_Slow_MA_Period - 1 Begin SumSqrt = SumSqrt + (C[cnt] - Avgv) * (C[cnt] - Avgv); End; MA_Slow_Deviation = SquareRoot(SumSqrt / inp_Slow_MA_Period); } Else MA_Slow_Deviation = 0; MA_Slow_ATR = atr(inp_Slow_MA_Period); Histogrm = MA_Slow_Deviation - MA_Slow_ATR; Main_Line = Histogrm; if inp_Signal_MA_Method == "SMA" Then Signal_Line = ma(inp_Source, inp_Signal_MA_Period); Else Signal_Line = ema(inp_Source, inp_Signal_MA_Period); Histogrm_Color = green; if MA_Fast >= MA_Fast[1] then { if HiLo_Range >= inp_Sensitivity then Histogrm_Color = Red; else Histogrm_Color = yellow; } else { if HiLo_Range >= inp_Sensitivity Then Histogrm_Color = Blue; else Histogrm_Color = White; } var : T(0); if Histogrm > Histogrm[1] Then T = 1; if Histogrm < Histogrm[1] Then T = -1; plot1(Histogrm,"BBMACD막대", Histogrm_Color);//속성에서 막대
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-02-01 13:18:53

안녕하세요 예스스탁입니다. 선그래프는 전봉에 출력된 값과 현재를 이어서 그리게 되므로 색상도 전봉부터 빨간색으로 현재봉까지 그려집니다. 막대는 전봉과 연결되지 않기 떄문에 봉 하나의 색상차이가 있는것처럼 보이게 됩니다. 빨간색으로 변경되면 매수, 파란색으로 변경되면 매도로 작성해 드립니다. input : inp_Sensitivity(0.01),inp_HiLo_Lookback(5), inp_Slow_MA_Period(26),inp_Slow_MA_Method("EMA"), inp_Fast_MA_Period(12),inp_Fast_MA_Method("EMA"), inp_Signal_MA_Period(9),inp_Signal_MA_Method("EMA"); var : inp_Source(0),Hbarssince(-1),Lbarssince(-1),HiLo_Range(0),MA_Slow_Deviation(0); var : MA_Fast(0),MA_Slow(0),MA_Slow_ATR(0); Var : SumSqrt(0), Avgv(0), cnt(0),Histogrm(0),Main_Line(0),Signal_Line(0),Histogrm_Color(0); inp_Source = close; if inp_Fast_MA_Method == "SMA" Then MA_Fast = ma(inp_Source, inp_Fast_MA_Period); Else MA_Fast = ema(inp_Source, inp_Fast_MA_Period); if High == highest(H,inp_HiLo_Lookback) Then Hbarssince = 0; Else { if Hbarssince >= 0 Then Hbarssince = Hbarssince+1; } if low == Lowest(L,inp_HiLo_Lookback) Then Lbarssince = 0; Else { if Lbarssince >= 0 Then Lbarssince = Lbarssince+1; } HiLo_Range = abs(Hbarssince-Lbarssince) * PriceScale * 100000; if inp_Slow_MA_Method == "SMA" Then MA_Slow = ma(inp_Source, inp_Slow_MA_Period); Else MA_Slow = ema(inp_Source, inp_Slow_MA_Period); If inp_Slow_MA_Period != 0 Then { Avgv = MA_Slow; SumSqrt = 0; For cnt = 0 To inp_Slow_MA_Period - 1 Begin SumSqrt = SumSqrt + (C[cnt] - Avgv) * (C[cnt] - Avgv); End; MA_Slow_Deviation = SquareRoot(SumSqrt / inp_Slow_MA_Period); } Else MA_Slow_Deviation = 0; MA_Slow_ATR = atr(inp_Slow_MA_Period); Histogrm = MA_Slow_Deviation - MA_Slow_ATR; Main_Line = Histogrm; if inp_Signal_MA_Method == "SMA" Then Signal_Line = ma(inp_Source, inp_Signal_MA_Period); Else Signal_Line = ema(inp_Source, inp_Signal_MA_Period); Histogrm_Color = green; if MA_Fast >= MA_Fast[1] then { if HiLo_Range >= inp_Sensitivity then Histogrm_Color = Red; else Histogrm_Color = yellow; } else { if HiLo_Range >= inp_Sensitivity Then Histogrm_Color = Blue; else Histogrm_Color = White; } var : T(0); if Histogrm > Histogrm[1] Then T = 1; if Histogrm < Histogrm[1] Then T = -1; if Histogrm_Color != Histogrm_Color[1] Then { if Histogrm_Color == Red Then Buy(); if Histogrm_Color == Blue Then Sell(); } 즐거운 하루되세요 > 새벽에 님이 쓴 글입니다. > 제목 : 문의드립니다 > 안녕하세요? 아래지표식을 챠트에적용시 첨부사진처럼 선으로적용시와 막대로적용시 봉1개의 색상차이가있습니다 막대그래프는 무시하여주시고 선그래프기준으로 사진에표시한것과 같이(선의기울기,양선음선에따라) 매수매도 시스템식을 구합니다 (신호발생은 사진과달리 1봉 다음 에 발생하도록 부탁드립니다 ) 감사드립니다 input : inp_Sensitivity(0.01),inp_HiLo_Lookback(5), inp_Slow_MA_Period(26),inp_Slow_MA_Method("EMA"), inp_Fast_MA_Period(12),inp_Fast_MA_Method("EMA"), inp_Signal_MA_Period(9),inp_Signal_MA_Method("EMA"); var : inp_Source(0),Hbarssince(-1),Lbarssince(-1),HiLo_Range(0),MA_Slow_Deviation(0); var : MA_Fast(0),MA_Slow(0),MA_Slow_ATR(0); Var : SumSqrt(0), Avgv(0), cnt(0),Histogrm(0),Main_Line(0),Signal_Line(0),Histogrm_Color(0); inp_Source = close; if inp_Fast_MA_Method == "SMA" Then MA_Fast = ma(inp_Source, inp_Fast_MA_Period); Else MA_Fast = ema(inp_Source, inp_Fast_MA_Period); if High == highest(H,inp_HiLo_Lookback) Then Hbarssince = 0; Else { if Hbarssince >= 0 Then Hbarssince = Hbarssince+1; } if low == Lowest(L,inp_HiLo_Lookback) Then Lbarssince = 0; Else { if Lbarssince >= 0 Then Lbarssince = Lbarssince+1; } HiLo_Range = abs(Hbarssince-Lbarssince) * PriceScale * 100000; if inp_Slow_MA_Method == "SMA" Then MA_Slow = ma(inp_Source, inp_Slow_MA_Period); Else MA_Slow = ema(inp_Source, inp_Slow_MA_Period); If inp_Slow_MA_Period != 0 Then { Avgv = MA_Slow; SumSqrt = 0; For cnt = 0 To inp_Slow_MA_Period - 1 Begin SumSqrt = SumSqrt + (C[cnt] - Avgv) * (C[cnt] - Avgv); End; MA_Slow_Deviation = SquareRoot(SumSqrt / inp_Slow_MA_Period); } Else MA_Slow_Deviation = 0; MA_Slow_ATR = atr(inp_Slow_MA_Period); Histogrm = MA_Slow_Deviation - MA_Slow_ATR; Main_Line = Histogrm; if inp_Signal_MA_Method == "SMA" Then Signal_Line = ma(inp_Source, inp_Signal_MA_Period); Else Signal_Line = ema(inp_Source, inp_Signal_MA_Period); Histogrm_Color = green; if MA_Fast >= MA_Fast[1] then { if HiLo_Range >= inp_Sensitivity then Histogrm_Color = Red; else Histogrm_Color = yellow; } else { if HiLo_Range >= inp_Sensitivity Then Histogrm_Color = Blue; else Histogrm_Color = White; } var : T(0); if Histogrm > Histogrm[1] Then T = 1; if Histogrm < Histogrm[1] Then T = -1; plot1(Histogrm,"BBMACD막대", Histogrm_Color);//속성에서 막대