커뮤니티

수식 문의 드립니다.

프로필 이미지
s1017051
2025-04-19 12:53:47
390
글번호 190262
답변완료
키움수식을 예스 지표로 나타내고 싶습니다. 항상 고맙습니다. *********************************************** 기준선-상단선 HighestSince(1, CrossUp(Rsi(Period), 50),C) 중심선1 A = HighestSince(1, CrossUp(Rsi(Period), 50),C); B = LowestSince(1, CrossUp(Rsi(Period), 50),C); (A + B)/2 하단선 LowestSince(1, CrossUp(Rsi(Period), 50),C) ---------------------------------------------------- Period // 8 ================================ *. 선_굵기, 색상- 조정 2. 파동선 3. 파동선을 잇는 추세선 부탁 드립니다
지표
답변 2
프로필 이미지

예스스탁 예스스탁 답변

2025-04-21 11:26:09

안녕하세요 예스스탁입니다. 1 input : Period(8); var : R(0),A(0),B(0); R = RSI(Period); if CrossUp(R,50) Then { A = C; B = C; } Else { if A > 0 and C > A Then A = C; if B > 0 and C < B Then B = C; } Plot1(A); plot2((A+B)/2); plot3(B); 2 input : ChangeMethod(1); //1:전환율, 2: 포인트(원), 3: 틱수, 4: n봉 최고가/최저가 갱신 input : Change(0.13); //ChangeMethod에 따라 변화율, 포인트, 틱수, n봉이 됨 input : UseClose(0); //0이면 고가/저가 사용, 1이면 종가 Array : HD[10](0),HT[10](0),HV[10](0); //고점 날짜, 시간, 가격 저장할 배열 Array : LD[10](0),LT[10](0),LV[10](0); //저점 날짜, 시간, 가격 저장할 배열 var : cnt(0),Hprice(0),Lprice(0); var : UpTrend(false),DownTrend(False),Trend(0); var : ZigZagTL(0),Text(0),LTL(0),HTL(0); HPrice = IFf(UseClose == 1 ,C,H); LPrice = IFf(UseClose == 1 ,C,L); if Index == 0 Then { //초기 최고값 HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; //초기 최저값 LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; } Else { if ChangeMethod == 1 Then { UpTrend = HPrice >= LV[0]*(1+Change/100); DownTrend = LPrice <= HV[0]*(1-Change/100); } else if ChangeMethod == 2 Then { UpTrend = HPrice >= LV[0]+Change; DownTrend = LPrice <= HV[0]-Change; } else if ChangeMethod == 3 Then { UpTrend = HPrice >= LV[0]+Change*PriceScale; DownTrend = LPrice <= HV[0]-Change*PriceScale; } Else { UpTrend = HPrice >= Highest(HPrice,Change)[1]; DownTrend = LPrice <= Lowest(LPrice,Change)[1]; } if trend <= 0 and UpTrend == true Then { trend = 1; For cnt = 9 DownTo 1 { HD[cnt] = HD[cnt-1]; HT[cnt] = HT[cnt-1]; HV[cnt] = HV[cnt-1]; } HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; ZigZagTL = TL_New(LD[0],LT[0],LV[0],HD[0],HT[0],HV[0]); TL_SetColor(ZigZagTL,Red); TL_SetSize(ZigZagTL,1); Text = Text_New(HD[0],HT[0],HV[0],NumToStr(HV[0],2)); Text_SetColor(Text,Red); Text_SetSize(Text,12); Text_SetStyle(Text,2,1); if HV[1] > 0 Then { HTL = TL_New(HD[1],HT[1],HV[1],HD[0],HT[0],HV[0]); TL_SetColor(HTL,Orange); TL_SetSize(HTL,0); } } Else if trend >= 0 and DownTrend Then { trend = -1; For cnt = 9 DownTo 1 { LD[cnt] = LD[cnt-1]; LT[cnt] = LT[cnt-1]; LV[cnt] = LV[cnt-1]; } LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; ZigZagTL = TL_New(HD[0],HT[0],HV[0],LD[0],LT[0],LV[0]); TL_SetColor(ZigZagTL,Blue); TL_SetSize(ZigZagTL,1); Text = Text_New(LD[0],LT[0],LV[0],NumToStr(LV[0],2)); Text_SetColor(Text,Blue); Text_SetSize(Text,12); Text_SetStyle(Text,2,0); if LV[1] > 0 Then { LTL = TL_New(LD[1],LT[1],LV[1],LD[0],LT[0],LV[0]); TL_SetColor(LTL,Cyan); TL_SetSize(LTL,0); } } Else { if trend == 1 Then { if HPrice > HV[0] Then { HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; TL_SetEnd(ZigZagTL,HD[0],HT[0],HV[0]); Text_SetLocation(Text,HD[0],HT[0],HV[0]); Text_SetString(Text,NumToStr(HV[0],2)); TL_SetEnd(HTL,HD[0],HT[0],HV[0]); } } if trend == -1 Then { if LPrice < LV[0] Then { LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; TL_SetEnd(ZigZagTL,LD[0],LT[0],LV[0]); Text_SetLocation(Text,LD[0],LT[0],LV[0]); Text_SetString(Text,NumToStr(LV[0],2)); TL_SetEnd(LTL,LD[0],LT[0],LV[0]); } } } } 즐거운 하루되세요 > s1017051 님이 쓴 글입니다. > 제목 : 수식 문의 드립니다. > 키움수식을 예스 지표로 나타내고 싶습니다. 항상 고맙습니다. *********************************************** 기준선-상단선 HighestSince(1, CrossUp(Rsi(Period), 50),C) 중심선1 A = HighestSince(1, CrossUp(Rsi(Period), 50),C); B = LowestSince(1, CrossUp(Rsi(Period), 50),C); (A + B)/2 하단선 LowestSince(1, CrossUp(Rsi(Period), 50),C) ---------------------------------------------------- Period // 8 ================================ *. 선_굵기, 색상- 조정 2. 파동선 3. 파동선을 잇는 추세선 부탁 드립니다
프로필 이미지

s1017051

2025-04-21 15:42:02

감사 드립니다. 그런데 예 챠트가 가격 화면에 안나타나고 및에 나타 납니다 위로 끙어 올릴려면 어떻게 합니까 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 문의 드립니다. > 안녕하세요 예스스탁입니다. 1 input : Period(8); var : R(0),A(0),B(0); R = RSI(Period); if CrossUp(R,50) Then { A = C; B = C; } Else { if A > 0 and C > A Then A = C; if B > 0 and C < B Then B = C; } Plot1(A); plot2((A+B)/2); plot3(B); 2 input : ChangeMethod(1); //1:전환율, 2: 포인트(원), 3: 틱수, 4: n봉 최고가/최저가 갱신 input : Change(0.13); //ChangeMethod에 따라 변화율, 포인트, 틱수, n봉이 됨 input : UseClose(0); //0이면 고가/저가 사용, 1이면 종가 Array : HD[10](0),HT[10](0),HV[10](0); //고점 날짜, 시간, 가격 저장할 배열 Array : LD[10](0),LT[10](0),LV[10](0); //저점 날짜, 시간, 가격 저장할 배열 var : cnt(0),Hprice(0),Lprice(0); var : UpTrend(false),DownTrend(False),Trend(0); var : ZigZagTL(0),Text(0),LTL(0),HTL(0); HPrice = IFf(UseClose == 1 ,C,H); LPrice = IFf(UseClose == 1 ,C,L); if Index == 0 Then { //초기 최고값 HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; //초기 최저값 LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; } Else { if ChangeMethod == 1 Then { UpTrend = HPrice >= LV[0]*(1+Change/100); DownTrend = LPrice <= HV[0]*(1-Change/100); } else if ChangeMethod == 2 Then { UpTrend = HPrice >= LV[0]+Change; DownTrend = LPrice <= HV[0]-Change; } else if ChangeMethod == 3 Then { UpTrend = HPrice >= LV[0]+Change*PriceScale; DownTrend = LPrice <= HV[0]-Change*PriceScale; } Else { UpTrend = HPrice >= Highest(HPrice,Change)[1]; DownTrend = LPrice <= Lowest(LPrice,Change)[1]; } if trend <= 0 and UpTrend == true Then { trend = 1; For cnt = 9 DownTo 1 { HD[cnt] = HD[cnt-1]; HT[cnt] = HT[cnt-1]; HV[cnt] = HV[cnt-1]; } HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; ZigZagTL = TL_New(LD[0],LT[0],LV[0],HD[0],HT[0],HV[0]); TL_SetColor(ZigZagTL,Red); TL_SetSize(ZigZagTL,1); Text = Text_New(HD[0],HT[0],HV[0],NumToStr(HV[0],2)); Text_SetColor(Text,Red); Text_SetSize(Text,12); Text_SetStyle(Text,2,1); if HV[1] > 0 Then { HTL = TL_New(HD[1],HT[1],HV[1],HD[0],HT[0],HV[0]); TL_SetColor(HTL,Orange); TL_SetSize(HTL,0); } } Else if trend >= 0 and DownTrend Then { trend = -1; For cnt = 9 DownTo 1 { LD[cnt] = LD[cnt-1]; LT[cnt] = LT[cnt-1]; LV[cnt] = LV[cnt-1]; } LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; ZigZagTL = TL_New(HD[0],HT[0],HV[0],LD[0],LT[0],LV[0]); TL_SetColor(ZigZagTL,Blue); TL_SetSize(ZigZagTL,1); Text = Text_New(LD[0],LT[0],LV[0],NumToStr(LV[0],2)); Text_SetColor(Text,Blue); Text_SetSize(Text,12); Text_SetStyle(Text,2,0); if LV[1] > 0 Then { LTL = TL_New(LD[1],LT[1],LV[1],LD[0],LT[0],LV[0]); TL_SetColor(LTL,Cyan); TL_SetSize(LTL,0); } } Else { if trend == 1 Then { if HPrice > HV[0] Then { HD[0] = sDate; HT[0] = sTime; HV[0] = HPrice; TL_SetEnd(ZigZagTL,HD[0],HT[0],HV[0]); Text_SetLocation(Text,HD[0],HT[0],HV[0]); Text_SetString(Text,NumToStr(HV[0],2)); TL_SetEnd(HTL,HD[0],HT[0],HV[0]); } } if trend == -1 Then { if LPrice < LV[0] Then { LD[0] = sDate; LT[0] = sTime; LV[0] = LPrice; TL_SetEnd(ZigZagTL,LD[0],LT[0],LV[0]); Text_SetLocation(Text,LD[0],LT[0],LV[0]); Text_SetString(Text,NumToStr(LV[0],2)); TL_SetEnd(LTL,LD[0],LT[0],LV[0]); } } } } 즐거운 하루되세요 > s1017051 님이 쓴 글입니다. > 제목 : 수식 문의 드립니다. > 키움수식을 예스 지표로 나타내고 싶습니다. 항상 고맙습니다. *********************************************** 기준선-상단선 HighestSince(1, CrossUp(Rsi(Period), 50),C) 중심선1 A = HighestSince(1, CrossUp(Rsi(Period), 50),C); B = LowestSince(1, CrossUp(Rsi(Period), 50),C); (A + B)/2 하단선 LowestSince(1, CrossUp(Rsi(Period), 50),C) ---------------------------------------------------- Period // 8 ================================ *. 선_굵기, 색상- 조정 2. 파동선 3. 파동선을 잇는 추세선 부탁 드립니다