커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

문의드립니다

2개의 특정일 사이의 최고가를 구하는 식 문의드립니다 input: 특정일1(20221201), 특정일2..... highest(특정일1, 특정일2).. 이렇게 작성해봤는데 아무것도 안나옵니다 감사합니다
프로필 이미지
러블리
2022-12-19
1251
글번호 164671
지표
답변완료

수식변경

안녕하세요...아래 조건수식을 만족시키는 종목을 찾고 싶습니다. no = sum(1) ; a = condition1; b = condition2 ; CC1 = valueWhen(2, a, no ) ; CC2 = valueWhen(1, b, no ) ; CC3 = valueWhen(1, a, no ) ; condition3 = CC1 == cc2-1 && cc2 == cc3-1 ; 그럼 부탁드립니다.
프로필 이미지
예그리나
2022-12-18
1196
글번호 164670
종목검색
답변완료

수식 부탁드립니다

수고하십니다. 선물 1분봉 차트에서 1] 아래 기본식을 당일 데이트레이딩만 하는 식으로 수정요. 2] 진입명이 "b1"이고, 진입후 이익이 1.5p 이상일 때 종가가 5ma보다 작으면서 고점대비 0.45p 이상 되돌림시 종가 청산 3] 진입명이 "b1"이고, 진입후 손실이 종가기준 0.65p 이상이면 손절 4] 진입명이 "b1"이고, 진입후 3봉 이후에 22ma 아래이고 진입봉의 저가를 종가기준 회복하지 못하면 손절... 하는 시스템식을 부탁합니다. 수고하세요 ########기본식 if c>ma(c,22) Then if CrossUp(ma(c,5),ma(c,20)) Then Buy("b1",onclose) ; if c<ma(c,22) Then if CrossDown(ma(c,5),ma(c,20)) Then sell("s1",onclose) ;
프로필 이미지
오이도인
2022-12-18
1289
글번호 164669
시스템
답변완료

문의 드립니다.~~~~

수고하십니다. 다음식의 자세한 주석 부탁드립니다. input : N(3),N1(30),T1(10),T2(50); var : cnt(0),loss1(0); loss1 = 0; for cnt = 1 to N { if IsEntryName("s1",cnt) == true and PositionProfit(cnt) < 0 Then loss1 = loss1+1; } if CountIf(C>O and H >= L+PriceScale*T1,N) == N and H >= L[n-1]+PriceScale*T2 Then Sell("s1"); if Bdate == Bdate[n-1] and CountIf(C<O,3) == 3 and H[n-1] >= L+PriceScale*n1 Then Buy("b1");
프로필 이미지
예스요
2022-12-17
1072
글번호 164668
시스템
답변완료

잘 부탁드립니다

잘부탁드립니다 사진으로 부탁드립니다 J 번 5봉전 변수처리 부탁드립니다
프로필 이미지
매치다는
2022-12-17
1097
글번호 164667
종목검색
답변완료

시스템 틀과 식 부탁드립니다.

안녕하세요^^ 시스템 식 부탁드립니다. 매매 기준점을 찾기 위하여 YesGlobalNEX HTS로 해외선물 거래중인데 거래를 잘해서인지 몇일전 NH에서 모바일 상품권(신세계)을 보내와 잘 쓰고 있습니다. 수작업으로 매매하면서 $를 잘벌던 중 손절과 이익실현을 제때 실행 하지 못해 벌어 놓았던 $ 도로아미타불 을 반복하고 있네요.ㅋㅋ 챠트에 계속 집중하기가 불가능하기 때문입니다. 현재 주식은 예스트레이더 HTS로 거래중인데 실현이익이 2020년도 약3억 2021년도 약6억 2022년도는 약3억원 중에 미실현 평가손익이 -1.5억원 중에 있습니다. 혹시 식주문 설명이 부족하더라도 잘 살피시어 부탁드립니다. 시스템 기본틀과 수식어만 작성해 주시면 나머지는 독자적 응용이 가능 한니다. * 매매실행시 몇번조건으로 진입과 청산 되었는지 차트에 표시하려 합니다. * 한시스템에서 매수진입 후 청산, 매도진입 후 청산이 가능한지 모르겠습니다. * YesGlobalNEX 시스템 함수가 코인매매에서도 적용되는지 궁금합니다. 1. 매수 진입조건 [전전 5평선이 전5평선 작고 and 5평선이 전5평선 보다 크고 and ((시가가 5평선 보다 작고 종가가 5평선 보다 크다) 또는 (시가와 종가가 5평선보다 크고 저가가 5평선보다 작다)) and StochasticsK가 StochasticsD 보다 크거나 같고 and 전전 StochasticsK가 전전 StochasticsD 작고 and 전 StochasticsK가 전 StochasticsK 기준선 50보다 작고 and Bollinger Bands 전 이평이 현이평보다 2.5 보다 작다 and 고가가 Bollinger Bands 상단밴드 보다 작다] 2. 매수 진입조건 [전종가가 5평선 보다 작고 and 종가가 시가보다 크고 and 전 cci가 전cci signal 보다 작고 and cci가 cci signal 보다 크다 and 전 cci가 -100 보다 작다 and 전 StochasticsD 전전 StochasticsD 작고 and StochasticsD가 전 StochasticsD 보다 크다] 3. 매수진입 위 1~2 공통 조건 1) 진입시간 07시 1분부터~ 다음날 05 30분까지. 2) 위 1 또는 2 조건 부합 시 매수진입 하려 합니다. 매수진입 후 청산조건 1) 시간이 05시 50분에 강제 청산 2) 전 StochasticsK가 전 StochasticsD 보다 크고 and StochasticsK가 StochasticsD보다 같거나 작다. 3) 전 StochasticsK가 Stochastics 기준선 80보다 크고 and StochasticsK가 전 StochasticsK 보다 작거나 같다. 4) 시간이 23시30분보다 크고 23시50분보다 작고 Bollinger Bands 상단밴드 보다 현재가가 100이상 크면 강제 청산. 5) 시간이 23시 30분보다 작고 Bollinger Bands 상단밴드 보다 현재가가 8이상 크면 강제 청산. 6) 종가가 5평선보자 작고 진입 봉 저가보다 작다. 7) 전,현 5개봉이 Bollinger Bands 이평 보다 크고 Bollinger Bands 이평 Bollinger Bands 전 이평 작다. 매도진입 1조건 [고가가 5평선, 20평선, Bollinger Bands 이평 보다 크고 and 종가가 5평선, 20평선, Bollinger Bands 이평 보다 작다 and 시가가 Bollinger Bands 이평 보다 크다 and 5평선이 전 5평선보다 작다 and cci signal 과 StochasticsD이 전 cci signal 과 StochasticsD작다 and Bollinger Bands 상단밴드가 전 Bollinger Bands 상단이 작다] 매도진입 2조건 매도진입 위 1~2 공통조건 1) 진입시간 07시 01분부터 다음날 05시 30까지 설정하려 합니다. 매도진입 후 청산조건 1) 종가가 cci signal 보다 크다 2) 종가와 전종가가 5평선보다 크고 and (전 종가와 종가가 양봉) 또는 (전 종가는 양봉 종가는 보합) 3) cci와 Stochasticsk가 cci signal 과 StochasticsD 크다 4) 저가가 Bollinger Bands 하단밴드보다 작거나 같고 and Bollinger Bands 하단밴드가 전 Bollinger Bands 하단밴드선이 크다. 5) (Bollinger Bands 이평 - 5평선)가 51보다 크고 종가가 시가보다 크거나 같다. 6) 시간이 05시50분에 강제 청산.
프로필 이미지
yjh7474
2022-12-17
1139
글번호 164666
시스템
답변완료

수정부탁드립니다

간단하게 수정부탁드리니다. 메모리부족현상 나타남 Input:af(0.06),maxAF(0.25); Var:오늘(0),극대(0),극저(0),가속(0),내일(0),추세(0),상승(1),하락(-1); //--------------------------------------------------------------------------------- Var1 = Ema(C,1); if Var1 > 0 and 극대 == 0 and 극저 == 0 then { 극대 = Var1; 극저 = Var1; } if Var1 > 0 and 오늘[1] == 0 then { if 추세[1] == 0 then { if Var1[1] < Var1 then 추세 = 상승; if Var1[1] > Var1 then 추세 = 하락; } if 추세[1] == 상승 and Var1[1] > Var1 then { 추세 = 하락; 오늘 = 극대[1]; 가속 = af; } if 추세[1] == 하락 and Var1[1] < Var1 then { 추세 = 상승; 오늘 = 극저[1]; 가속 = af; } 극저 = min(Var1,극저); 극대 = max(Var1,극대); } if 오늘[1] > 0 then { if 추세[1] == 상승 then { if Var1 > 내일[1] then { 오늘 = 내일[1]; 극저 = 0; if Var1 > 극대[1] then { 극대 = Var1; 가속 = min(maxAF,가속+af); } } else { 추세 = 하락; 오늘 = 극대[1]; 극대 = 0; 극저 = Var1; 가속 = af; } } if 추세[1] == 하락 then { if Var1 < 내일[1] then { 오늘 = 내일[1]; 극대 = 0; if Var1 < 극저[1] then { 극저 = Var1; 가속 = min(maxAF,가속+af); } } else { 추세 = 상승; 오늘 = 극저[1]; 극저 = 0; 극대 = Var1; 가속 = af; } } } 내일 = (max(극대,극저) - 오늘) * 가속 + 오늘; //Plot1(오늘); if var1 >= C Then Plot1(var1, "오늘",cyan); if var1 <= C Then Plot1(var1, "오늘",tomato); //--------------------------------------------------------------------------------- var2 = Ema(C,2); if var2 > 0 and 극대 == 0 and 극저 == 0 then { 극대 = var2; 극저 = var2; } if var2 > 0 and 오늘[1] == 0 then { if 추세[1] == 0 then { if var2[1] < var2 then 추세 = 상승; if var2[1] > var2 then 추세 = 하락; } if 추세[1] == 상승 and var2[1] > var2 then { 추세 = 하락; 오늘 = 극대[1]; 가속 = af; } if 추세[1] == 하락 and var2[1] < var2 then { 추세 = 상승; 오늘 = 극저[1]; 가속 = af; } 극저 = min(var2,극저); 극대 = max(var2,극대); } if 오늘[1] > 0 then { if 추세[1] == 상승 then { if var2 > 내일[1] then { 오늘 = 내일[1]; 극저 = 0; if var2 > 극대[1] then { 극대 = var2; 가속 = min(maxAF,가속+af); } } else { 추세 = 하락; 오늘 = 극대[1]; 극대 = 0; 극저 = var2; 가속 = af; } } if 추세[1] == 하락 then { if var2 < 내일[1] then { 오늘 = 내일[1]; 극대 = 0; if var2 < 극저[1] then { 극저 = var2; 가속 = min(maxAF,가속+af); } } else { 추세 = 상승; 오늘 = 극저[1]; 극저 = 0; 극대 = var2; 가속 = af; } } } 내일 = (max(극대,극저) - 오늘) * 가속 + 오늘; //Plot1(오늘); if var2 >= C Then Plot2(var2, "오늘",cyan); if var2 <= C Then Plot2(var2, "오늘",tomato); //--------------------------------------------------------------------------------- var3 = Ema(C,4); if var3 > 0 and 극대 == 0 and 극저 == 0 then { 극대 = var3; 극저 = var3; } if var3 > 0 and 오늘[1] == 0 then { if 추세[1] == 0 then { if var3[1] < var3 then 추세 = 상승; if var3[1] > var3 then 추세 = 하락; } if 추세[1] == 상승 and var3[1] > var3 then { 추세 = 하락; 오늘 = 극대[1]; 가속 = af; } if 추세[1] == 하락 and var3[1] < var3 then { 추세 = 상승; 오늘 = 극저[1]; 가속 = af; } 극저 = min(var3,극저); 극대 = max(var3,극대); } if 오늘[1] > 0 then { if 추세[1] == 상승 then { if var3 > 내일[1] then { 오늘 = 내일[1]; 극저 = 0; if var3 > 극대[1] then { 극대 = var3; 가속 = min(maxAF,가속+af); } } else { 추세 = 하락; 오늘 = 극대[1]; 극대 = 0; 극저 = var3; 가속 = af; } } if 추세[1] == 하락 then { if var3 < 내일[1] then { 오늘 = 내일[1]; 극대 = 0; if var3 < 극저[1] then { 극저 = var3; 가속 = min(maxAF,가속+af); } } else { 추세 = 상승; 오늘 = 극저[1]; 극저 = 0; 극대 = var3; 가속 = af; } } } 내일 = (max(극대,극저) - 오늘) * 가속 + 오늘; //Plot1(오늘); if var3 >= C Then Plot3(var3, "오늘",cyan); if var3 <= C Then Plot3(var3, "오늘",tomato); //--------------------------------------------------------------------------------- var4 = Ema(C,6); if var4 > 0 and 극대 == 0 and 극저 == 0 then { 극대 = var4; 극저 = var4; } if var4 > 0 and 오늘[1] == 0 then { if 추세[1] == 0 then { if var4[1] < var4 then 추세 = 상승; if var4[1] > var4 then 추세 = 하락; } if 추세[1] == 상승 and var4[1] > var4 then { 추세 = 하락; 오늘 = 극대[1]; 가속 = af; } if 추세[1] == 하락 and var4[1] < var4 then { 추세 = 상승; 오늘 = 극저[1]; 가속 = af; } 극저 = min(var4,극저); 극대 = max(var4,극대); } if 오늘[1] > 0 then { if 추세[1] == 상승 then { if var4 > 내일[1] then { 오늘 = 내일[1]; 극저 = 0; if var4 > 극대[1] then { 극대 = var4; 가속 = min(maxAF,가속+af); } } else { 추세 = 하락; 오늘 = 극대[1]; 극대 = 0; 극저 = var4; 가속 = af; } } if 추세[1] == 하락 then { if var4 < 내일[1] then { 오늘 = 내일[1]; 극대 = 0; if var4 < 극저[1] then { 극저 = var4; 가속 = min(maxAF,가속+af); } } else { 추세 = 상승; 오늘 = 극저[1]; 극저 = 0; 극대 = var4; 가속 = af; } } } 내일 = (max(극대,극저) - 오늘) * 가속 + 오늘; //Plot1(오늘); if var4 >= C Then Plot4(var4, "오늘",cyan); if var4 <= C Then Plot4(var4, "오늘",tomato); //--------------------------------------------------------------------------------- var5 = Ema(C,8); if var5 > 0 and 극대 == 0 and 극저 == 0 then { 극대 = var5; 극저 = var5; } if var5 > 0 and 오늘[1] == 0 then { if 추세[1] == 0 then { if var5[1] < var5 then 추세 = 상승; if var5[1] > var5 then 추세 = 하락; } if 추세[1] == 상승 and var5[1] > var5 then { 추세 = 하락; 오늘 = 극대[1]; 가속 = af; } if 추세[1] == 하락 and var5[1] < var5 then { 추세 = 상승; 오늘 = 극저[1]; 가속 = af; } 극저 = min(var5,극저); 극대 = max(var5,극대); } if 오늘[1] > 0 then { if 추세[1] == 상승 then { if var5 > 내일[1] then { 오늘 = 내일[1]; 극저 = 0; if var5 > 극대[1] then { 극대 = var5; 가속 = min(maxAF,가속+af); } } else { 추세 = 하락; 오늘 = 극대[1]; 극대 = 0; 극저 = var5; 가속 = af; } } if 추세[1] == 하락 then { if var5 < 내일[1] then { 오늘 = 내일[1]; 극대 = 0; if var5 < 극저[1] then { 극저 = var5; 가속 = min(maxAF,가속+af); } } else { 추세 = 상승; 오늘 = 극저[1]; 극저 = 0; 극대 = var5; 가속 = af; } } } 내일 = (max(극대,극저) - 오늘) * 가속 + 오늘; //Plot1(오늘); if var5 >= C Then Plot5(var5, "오늘",cyan); if var5 <= C Then Plot5(var5, "오늘",tomato); //--------------------------------------------------------------------------------- var6 = Ema(C,10); if var6 > 0 and 극대 == 0 and 극저 == 0 then { 극대 = var6; 극저 = var6; } if var6 > 0 and 오늘[1] == 0 then { if 추세[1] == 0 then { if var6[1] < var6 then 추세 = 상승; if var6[1] > var6 then 추세 = 하락; } if 추세[1] == 상승 and var6[1] > var6 then { 추세 = 하락; 오늘 = 극대[1]; 가속 = af; } if 추세[1] == 하락 and var6[1] < var6 then { 추세 = 상승; 오늘 = 극저[1]; 가속 = af; } 극저 = min(var6,극저); 극대 = max(var6,극대); } if 오늘[1] > 0 then { if 추세[1] == 상승 then { if var6 > 내일[1] then { 오늘 = 내일[1]; 극저 = 0; if var6 > 극대[1] then { 극대 = var6; 가속 = min(maxAF,가속+af); } } else { 추세 = 하락; 오늘 = 극대[1]; 극대 = 0; 극저 = var6; 가속 = af; } } if 추세[1] == 하락 then { if var6 < 내일[1] then { 오늘 = 내일[1]; 극대 = 0; if var6 < 극저[1] then { 극저 = var6; 가속 = min(maxAF,가속+af); } } else { 추세 = 상승; 오늘 = 극저[1]; 극저 = 0; 극대 = var6; 가속 = af; } } } 내일 = (max(극대,극저) - 오늘) * 가속 + 오늘; //Plot1(오늘); if var6 >= C Then Plot6(var6, "오늘",cyan); if var6 <= C Then Plot6(var6, "오늘",tomato); 시스템식부탁드립니다. input :Peod(10),색상두께(50); Var:하락색a(Red), 상승색a(Blue); Var:jr(0),gT(0); Var: 고11(0),고12(0),시간11(0),시간12(0),선TL1(0),선TL(0), 고21(0),고22(0),시간21(0),시간22(0),Vlue11(0),Vlue12(0), 고31(0),고32(0),시간31(0),시간32(0); Array:고Val[20](0),저val[20](0),고Bar[20](0),저Bar[20](0); Array:dr[7](0),dfr[7](0); var : dbox(0),dbox1(0); dr[0] = 0; dr[1] = 2; dr[2] = 3.; dr[3] = -1; dr[4] = -2.; dr[5] = 1; dr[6] = 0.5; For jr = 0 To 19 { 고Bar[jr] = 고Bar[jr] + 1; 저Bar[jr] = 저Bar[jr] + 1; } if crossup(c,highest(H,Peod)[1]) Then gT = 1; if CrossDown(c,Lowest(L,Peod)[1]) Then gT = -1; If gT == -1 Then { If gT[1] != -1 Then { For jr = 18 DownTo 0 { 저val[jr+1] = 저val[jr]; 저Bar[jr+1] = 저Bar[jr]; //ZZ[j+1] = ZZ[j]; } 저val[0] = L; 저Bar[0] = 0; //ZZ[0] = L; 고11 = Date[고Bar[0]]; 시간11 = stime[고Bar[0]]; Vlue11 = 고Val[0]; 고12 = Date[저Bar[0]]; 시간12 = stime[저Bar[0]]; Vlue12 = 저val[0]; 고21 = Date[고Bar[0]]; 시간21 = stime[고Bar[0]]; 고22 = Date[0]; 시간22 = stime[0]; for jr = 0 to 6 { dfr[jr] = 저val[1] + ((고Val[0] - 저val[1]) * dr[jr]); } Box_SetEnd(dbox,고11,시간11,Vlue11); dbox = box_new(고11,시간11,Vlue11,고12,시간12,Vlue12); Box_SetColor(dbox,상승색a); Box_SetFill(dbox,true,색상두께); } If 저val[0] > L Then { 저val[0] = L; 저Bar[0] = 0; //ZZ[0] = L; 고12 = Date[저Bar[0]]; 시간12 = stime[저Bar[0]]; Vlue12 = 저val[0]; 고22 = Date[0]; 시간22 = stime[0]; } Box_SetEnd(dbox,NextBarSdate,NextBarStime,Vlue12); } If gT == 1 Then { If gT[1] != 1 Then { For jr = 18 DownTo 0 { 고Val[jr+1] = 고Val[jr]; 고Bar[jr+1] = 고Bar[jr]; //ZZ[j+1] = ZZ[j]; } 고Val[0] = H; 고Bar[0] = 0; //ZZ[0] = H; 고11 = Date[저Bar[0]]; 시간11 = stime[저Bar[0]]; Vlue11 = 저val[0]; 고12 = Date[고Bar[0]]; 시간12 = stime[고Bar[0]]; Vlue12 = 고Val[0]; 고31 = Date[저Bar[0]]; 시간31 = stime[저Bar[0]]; 고32 = Date[0]; 시간32 = stime[0]; for jr = 0 to 5 { dfr[jr] = 저val[0] + ((고Val[1] - 저val[0]) * dr[jr]); } Box_SetEnd(dbox,고11,시간11,Vlue11); dbox = box_new(고11,시간11,Vlue11,고12,시간12,Vlue12); Box_SetColor(dbox,하락색a); Box_SetFill(dbox,true,색상두께); } If 고Val[0] < H Then { 고Val[0] = H; 고Bar[0] = 0; //ZZ[0] = H; 고12 = Date[고Bar[0]]; 시간12 = stime[고Bar[0]]; Vlue12 = 고Val[0]; 고32 = Date[0]; 시간32 = stime[0]; } Box_SetEnd(dbox,NextBarSdate,NextBarStime,Vlue12); }
프로필 이미지
외국인
2022-12-17
1320
글번호 164665
지표
답변완료

문의드립니다.

첫번째 전체종가상승률이 25%가 넘는 3캔들(AA) 출현시 첫캔들의 시가를 OA로 하고 두번째 전체종가상승률이 25%가 넘는 3캔들(BB) 출현시 첫캔들의 시가를 OB로 했을 때 AA캔들이후 저가로 OA를 데드크로스한 이후에 BB캔들이 발생하고 이후 저가로 OB를 데드크로스한 이후 20%이상의 장대양봉이 나온 종목검색식을 부탁드립니다. AA의 인덱스와 BB의 인덱스 사이에 데드크로스가 일어나고 BB인덱스 뒤에 데드크로스가 또 일어나야 하는데 순서대로 발생해야 해서 수식작성이 어려웠습니다. 주석도 부탁드립니다. 추가를 많이 해야 해서. 항상 친절한 답변을 해 주셔서 감사드립니다.
프로필 이미지
이심전심
2022-12-18
1058
글번호 164664
종목검색
답변완료

지표수식 변환 요청드립니다

수식변환 요청드립니다. 아래수식은 트레이딩뷰 지표식인데 이미지파일 그림처럼 캔들로 구현하지 못하더라도 HARSI 바디 시가 종가 고가 저가 를 선으로 출력되어도 됩니다 ##=======// //@version=5 //@author=JayRogers indicator('Heikin Ashi RSI Oscillator', 'HARSI &#8226;', false, format.price, 2) string TT_HARSI = 'Period for the RSI calculations used to generate the' + 'candles. This seperate from the RSI plot/histogram length.' string TT_PBIAS = 'Smoothing feature for the OPEN of the HARSI candles.' + ' Increases bias toward the prior open value which can' + ' help provide better visualisation of trend strength.' + ' ** By changing the Open values, High and Low can also' + ' be distorted - however Close will remain unchanged.' string TT_SMRSI = 'This option smoothes the RSI in a manner similar to HA' + ' open, but uses the realtime rsi rather than the prior' + ' close value.' /////////////////////////////////////////////////////////////////////// // // // ====== INPUTS ====== // // // //////////////////////////////////////////////////////////////////////////////// // -- Candle config string GROUP_CAND = 'Config&#8195;&#187;&#8195;HARSI Candles' i_lenHARSI = input.int(14, 'Length', group=GROUP_CAND, minval=1, tooltip=TT_HARSI) i_smoothing = input.int(7, 'Open Smoothing', group=GROUP_CAND, minval=1, maxval=100, tooltip=TT_PBIAS) string INLINE_COL = 'Colour Pallette' i_colUp = input.color(color.red, 'Colour Pallette&#8195;&#8195;', group=GROUP_CAND, inline=INLINE_COL) i_colDown = input.color(color.teal, ' ', group=GROUP_CAND, inline=INLINE_COL) i_colWick = input.color(color.gray, ' ', group=GROUP_CAND, inline=INLINE_COL) // -- RSI plot config string GROUP_PLOT = 'Config&#8195;&#187;&#8195;RSI Plot' i_source = input.source(ohlc4, 'Source', group=GROUP_PLOT) i_lenRSI = input.int(7, 'Length', group=GROUP_PLOT, minval=1) i_mode = input.bool(true, 'Smoothed Mode RSI?', group=GROUP_PLOT, tooltip=TT_SMRSI) //////////////////////////////////////////////////////////////////////////////// // // // ====== FUNCTIONS ====== // // // //////////////////////////////////////////////////////////////////////////////// // zero median rsi helper function, just subtracts 50. f_zrsi(_source, _length) => ta.rsi(_source, _length) - 50 // mode 셀렉타블 rsi function for standard, or smoothed output f_rsi(_source, _length, _mode) => // get base rsi float _zrsi = f_zrsi(_source, _length) // smoothing in a manner similar to HA open, but rather using the realtime // rsi in place of the prior close value. var float _smoothed = na _smoothed := na(_smoothed[1]) ? _zrsi : (_smoothed[1] + _zrsi) / 2 // return the requested mode _mode ? _smoothed : _zrsi // RSI Heikin-Ashi generation function f_rsiHeikinAshi(_length) => // get close rsi float _closeRSI = f_zrsi(close, _length) // emulate "open" simply by taking the previous close rsi value float _openRSI = nz(_closeRSI[1], _closeRSI) // the high and low are tricky, because unlike "high" and "low" by // themselves, the RSI results can overlap each other. So first we just go // ahead and get the raw results for high and low, and then.. float _highRSI_raw = f_zrsi(high, _length) float _lowRSI_raw = f_zrsi(low, _length) // ..make sure we use the highest for high, and lowest for low float _highRSI = math.max(_highRSI_raw, _lowRSI_raw) float _lowRSI = math.min(_highRSI_raw, _lowRSI_raw) // ha calculation for close float _close = (_openRSI + _highRSI + _lowRSI + _closeRSI) / 4 // ha calculation for open, standard, and smoothed/lagged var float _open = na _open := na(_open[i_smoothing]) ? (_openRSI + _closeRSI) / 2 : (_open[1] * i_smoothing + _close[1]) / (i_smoothing + 1) // ha high and low min-max 섹렉션 float _high = math.max(_highRSI, math.max(_open, _close)) float _low = math.min(_lowRSI, math.min(_open, _close)) // return the OHLC values [_open, _high, _low, _close] //////////////////////////////////////////////////////////////////////////////// // // // ====== SERIES, LINES and LABELS ====== // // // //////////////////////////////////////////////////////////////////////////////// // standard, or ha smoothed rsi for the line plot and/or histogram float RSI = f_rsi(i_source, i_lenRSI, i_mode) // get OHLC values to use in the plotcandle() [O, H, L, C] = f_rsiHeikinAshi(i_lenHARSI) // candle body colouring color bodyColour = C > O ? i_colUp : i_colDown color wickColour = i_colWick // make our HA rsi candles plotcandle(O, H, L, C, 'HARSI', bodyColour, wickColour, bordercolor=bodyColour)
프로필 이미지
당일선물
2022-12-18
1619
글번호 164663
지표
답변완료

지표문의에요.

아래 키움수식을 예스수식으로 변환부탁드려요,, 라인 색이랑 두께도 지정 가능하게 부탁드려요,, 미리 감사드립니다. (__) 지표1 선행중심선(상단지표) 수식1 a=Highest(H,period1); b=LowEst(L,period1); N=(A+B)/2; shift(N,26) 수식2 a=Highest(H,period2); b=LowEst(L,period2); N=(A+B)/2; shift(N,26) 수식3 a=Highest(H,period3); b=LowEst(L,period3); N=(A+B)/2; shift(N,26) 수식4 a=Highest(H,period4); b=LowEst(L,period4); N=(A+B)/2; shift(N,26) 수식5 a=Highest(H,period5); b=LowEst(L,period5); N=(A+B)/2; shift(N,26) 지표조건 period1 333 period2 555 period3 777 period4 888 period5 999 지표2 볼벤중심선(하단지표) 수식1 BBandsUp(Period1,D1) 수식2 BBandsUp(Period2,D1) 수식3 BBandsUp(Period3,D1) 수식4 a=Highest(H,period4); b=LowEst(L,period4); N=(A+B)/2; shift(N,26) 수식5 MA(c, 기간6, 이평종류) 지표조건 period1 999 period2 777 period3 555 period4 333 D1 2 기간6 1 이평종류 지수
프로필 이미지
vhvh
2022-12-17
1071
글번호 164662
지표