커뮤니티

수식 문의드립니다.

프로필 이미지
율담
2024-02-18 04:09:14
842
글번호 176727
답변완료
차트에 보면 30분단위로 수직선이 그어져 있습니다. 조건 A를 만족시 캔들에 표시를 하고 싶습니다. 이표시가 차트에 그려져있는 30분단위내에 5개 이상이 될경우, 해당 30분단위내에 있는 모든 캔들의 최고가를 수평선으로 표시하고 싶습니다. 이후 또다시 5개이상이 되는경우가 나오면 그전 수평선은 석제하고 대체했으면합니다. 1. 이런 수식을 하나 부탁드리구요. 하나더 부탁하고 싶은 수식은 차트에 그려져있는 30분단위가 아니라... 조건을 만족하는 캔들이 30분안에 5개이상 발생하였을경우 2. 30분내 고가를 수평선으로 표시하고 싶습니다. 3. 아울러 이 고가를 상향돌파시 매수진입 수식도 부탁드립니다.
강조
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2024-02-19 14:15:08

안녕하세요 예스스탁입니다. 1 input : 분간격(30),N(5); var : S1(0),D1(0),TM(0),TF(0),count(0),TX(0),cnt(0),TL(0); var : hh(0); if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; } if D1 > 0 then { if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; TF = TM%분간격; #60분 간격 카운트 초기화 if Bdate != Bdate[1] or (Bdate == Bdate[1] and 분간격 > 1 and TF < TF[1]) or (Bdate == Bdate[1] and 분간격 > 1 and TM >= TM[1]+분간격) or (Bdate == Bdate[1] and 분간격 == 1 and TM > TM[1]) Then { TL_new(sDate,sTime,0,sDate,sTime,99999999); count = 0; var1 = sDate; Var2 = sTime; hh = h; } if hh > 0 and h > hh Then hh = h; #조건A 만족시 #if 조건A Then if C > O Then { #1씩 증가 count = count+1; #텍스트출력함수로 a1,a2와 같이 a횟수로 표시 TX = text_new(sDate,sTime,H,"●"); Text_SetColor(TX,Green); Text_SetStyle(TX,2,1); } #카운트가 5이상이면 if count >= N Then { TL_Delete(TL); TL = TL_new(var1,Var2,hh,NextBarSdate,NextBarStime,hh); TL_SetExtRight(TL,true); TL_SetColor(TL,Red); } } 2 input : 분(30),N(5); var : S1(0),D1(0),TM(0),TF(0),count(0),TX(0),cnt(0),hh(0),TL(0); if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; } if D1 > 0 then { if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; Condition1 = 조건A; count = 0; hh = h; var1 = sDate; Var2 = sTime; For cnt = 0 to 99 { if Bdate[cnt] == Bdate and TM[cnt] > TM-분 Then { var1 = sDate[cnt]; Var2 = sTime[cnt]; if h[cnt] > hh Then hh = h[cnt]; if Condition1[cnt] == true Then { count = count+1; } } } if count >= 5 Then { TL_Delete(TL); TL = TL_new(var1,Var2,hh,NextBarSdate,NextBarStime,hh); TL_SetExtRight(TL,true); TL_SetColor(TL,Red); } } 3 input : 분(30),N(5); var : S1(0),D1(0),TM(0),TF(0),count(0),TX(0),cnt(0),hh(0),TL(0); if Bdate != Bdate[1] Then { S1 = TimeToMinutes(stime); D1 = sdate; } if D1 > 0 then { if sdate == D1 Then TM = TimeToMinutes(stime)-S1; Else TM = TimeToMinutes(stime)+1440-S1; Condition1 = 조건A; count = 0; hh = h; var1 = sDate; Var2 = sTime; For cnt = 0 to 99 { if Bdate[cnt] == Bdate and TM[cnt] > TM-분 Then { var1 = sDate[cnt]; Var2 = sTime[cnt]; if h[cnt] > hh Then hh = h[cnt]; if Condition1[cnt] == true Then { count = count+1; } } } if count >= 5 Then { TL_Delete(TL); TL = TL_new(var1,Var2,hh,NextBarSdate,NextBarStime,hh); TL_SetExtRight(TL,true); TL_SetColor(TL,Red); } } if hh > 0 and CrossUp(C,hh) Then Buy(); 즐거운 하루되세요 > 율담 님이 쓴 글입니다. > 제목 : 수식 문의드립니다. > 차트에 보면 30분단위로 수직선이 그어져 있습니다. 조건 A를 만족시 캔들에 표시를 하고 싶습니다. 이표시가 차트에 그려져있는 30분단위내에 5개 이상이 될경우, 해당 30분단위내에 있는 모든 캔들의 최고가를 수평선으로 표시하고 싶습니다. 이후 또다시 5개이상이 되는경우가 나오면 그전 수평선은 석제하고 대체했으면합니다. 1. 이런 수식을 하나 부탁드리구요. 하나더 부탁하고 싶은 수식은 차트에 그려져있는 30분단위가 아니라... 조건을 만족하는 캔들이 30분안에 5개이상 발생하였을경우 2. 30분내 고가를 수평선으로 표시하고 싶습니다. 3. 아울러 이 고가를 상향돌파시 매수진입 수식도 부탁드립니다.