커뮤니티

문의

프로필 이미지
gt
2015-08-19 21:16:34
166
글번호 89675
답변완료
아래식 수정부탁드립니다. VALUE == 1일 때는 CenterValue기준으로 위쪽으로 붉은색으로 채우고 VALUE == -1일 때는 CenterValue기준으로 아래쪽으로 파란색으로 채우고자 합니다. 미리 감사드립니다. VARS: MAXDAYLINE.SHORT(60); VARS: M3DP(3); VARS: M3D(0, DATA1); VARS: M3D.SUM(0, DATA1); VARS: DayLineCnt(0); ARRAY: CC[60](0, DATA1); //---------------------------------------------------------------------------------------------------------------------------------------------------------- if ( DATA1(Date <> Date[1]) ) Then { for DayLineCnt = 1 to MAXDAYLINE.SHORT - 1 { CC[DayLineCnt] = CC[DayLineCnt - 1][1]; } } CC[0] = CLOSE; M3D.SUM = 0; for DayLineCnt = 1 to MAXDAYLINE.SHORT - 1 { if ( (DayLineCnt < M3DP) AND (CC[M3DP - 1] > 0) ) then M3D.SUM = M3D.SUM + CC[DayLineCnt]; } M3D = ((M3D.SUM + DATA1(OPEND(0))) / M3DP); VARS: Period(5), CenterValue(0), VALUE(0); CenterValue = MA(C, Period); if (CLOSE > CenterValue) AND (CLOSE > M3D) then { VALUE = 1; } if (CLOSE < CenterValue) AND (CLOSE < M3D) then { VALUE = -1; } if (VALUE == 1) then { PLOT3(CenterValue, "CENTER", RGB(255,255,255)); } if (VALUE == -1) then { PLOT3(CenterValue, "CENTER", RGB(255,255,255)); }
지표
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2015-08-20 13:50:36

안녕하세요 예스스탁입니다. 문의하신 내용을 구현하려면 아래와 같은 순서로 지표 및 차트의 속성에서 몇가시 설저을 하셔야 합니다. 1. VARS: MAXDAYLINE.SHORT(60); VARS: M3DP(3); VARS: M3D(0, DATA1); VARS: M3D.SUM(0, DATA1); VARS: DayLineCnt(0); ARRAY: CC[60](0, DATA1); //---------------------------------------------------------------------------------------------------------------------------------------------------------- if ( DATA1(Date <> Date[1]) ) Then { for DayLineCnt = 1 to MAXDAYLINE.SHORT - 1 { CC[DayLineCnt] = CC[DayLineCnt - 1][1]; } } CC[0] = CLOSE; M3D.SUM = 0; for DayLineCnt = 1 to MAXDAYLINE.SHORT - 1 { if ( (DayLineCnt < M3DP) AND (CC[M3DP - 1] > 0) ) then M3D.SUM = M3D.SUM + CC[DayLineCnt]; } M3D = ((M3D.SUM + DATA1(OPEND(0))) / M3DP); VARS: Period(5), CenterValue(0), VALUE(0); CenterValue = MA(C, Period); if (CLOSE > CenterValue) AND (CLOSE > M3D) then { VALUE = 1; } if (CLOSE < CenterValue) AND (CLOSE < M3D) then { VALUE = -1; } if (VALUE == 1) then { PLOT3(CenterValue, "CENTER", RGB(255,255,255)); plot4(9999999999999, "기준", RGB(255,255,255)); } if (VALUE == -1) then { PLOT3(CenterValue, "CENTER", RGB(255,255,255)); plot4(0, "기준", RGB(255,255,255)); } 2 위 지표를 작성하시고 문법검증(f4) 후에 f5키를 누르시면 지표속성화면이 나타납니다. 차트표시탭과 Y축표시탭에서 첨부된 그림과 같이 설정하시고 3 차트는 기본차트속성을 여신후에 Y축을 화면(기본차트)로 지정하신 후에 식을 적용하시면 됩니다. 기본차트속성은 차트에서 봉을 마우스로 더블클릭하시면 됩니다. 즐거운 하루되세요 > gt 님이 쓴 글입니다. > 제목 : 문의 > 아래식 수정부탁드립니다. VALUE == 1일 때는 CenterValue기준으로 위쪽으로 붉은색으로 채우고 VALUE == -1일 때는 CenterValue기준으로 아래쪽으로 파란색으로 채우고자 합니다. 미리 감사드립니다. VARS: MAXDAYLINE.SHORT(60); VARS: M3DP(3); VARS: M3D(0, DATA1); VARS: M3D.SUM(0, DATA1); VARS: DayLineCnt(0); ARRAY: CC[60](0, DATA1); //---------------------------------------------------------------------------------------------------------------------------------------------------------- if ( DATA1(Date <> Date[1]) ) Then { for DayLineCnt = 1 to MAXDAYLINE.SHORT - 1 { CC[DayLineCnt] = CC[DayLineCnt - 1][1]; } } CC[0] = CLOSE; M3D.SUM = 0; for DayLineCnt = 1 to MAXDAYLINE.SHORT - 1 { if ( (DayLineCnt < M3DP) AND (CC[M3DP - 1] > 0) ) then M3D.SUM = M3D.SUM + CC[DayLineCnt]; } M3D = ((M3D.SUM + DATA1(OPEND(0))) / M3DP); VARS: Period(5), CenterValue(0), VALUE(0); CenterValue = MA(C, Period); if (CLOSE > CenterValue) AND (CLOSE > M3D) then { VALUE = 1; } if (CLOSE < CenterValue) AND (CLOSE < M3D) then { VALUE = -1; } if (VALUE == 1) then { PLOT3(CenterValue, "CENTER", RGB(255,255,255)); } if (VALUE == -1) then { PLOT3(CenterValue, "CENTER", RGB(255,255,255)); }