커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

수식 수정 부탁드립니다.

안녕하세요? 늘 고맙습니다. 아래 지표수식에 추가 부탁드립니다. 매도 : 바로전 고점1과 저점1이 확정된 후 다시 고점2가 확정됨, 이후 가격이 하락해서 고점1를 하향 돌파시 매도 진입 청산 : 저점1 하향 돌파시 매도 청산 청산2 : 고점2 상향 돌파시 매도 청산 매수 : 바로전 고점1과 저점1이 확정된 후 다시 저점2가 확정됨, 이후 가격이 상승해서 저점1을 상향 돌파시 매수 진입 청산 : 고점1 상향 돌파시 매수 청산 청산2 : 저점2 하향 돌파시 매도 청산 Input:length(3); Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0), TL1(0),처리구분(""),T(0),TL2(0),TL3(0); var : hh(0),ll(0),ii(0),diff(0),TL41(0),TL42(0),TL43(0),TL44(0),TL45(0),TL46(0); Array:고점[10,5](0),저점[10,5](0); 처리구분 = ""; If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then { If 저점[1,1] > L Then 처리구분 = "저점처리"; If 고점[1,1] < H Then 처리구분 = "고점처리"; } Else If Highest(H,length) == H and lastHiVal <> H Then 처리구분 = "고점처리"; Else If Lowest(L,length) == L and lastLoVal <> L Then 처리구분 = "저점처리"; If 처리구분 == "고점처리" Then { T = 1; lastHiVal = H; If 고점[1,2] < 저점[1,2] Then { For j = 10 DownTo 2 { 고점[j,1] = 고점[j-1,1]; 고점[j,2] = 고점[j-1,2]; } } If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then { 고점[1,1] = H; 고점[1,2] = Index; sBar = Index - 저점[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); TL_Delete(TL2); } TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],sDate[eBar],sTime[eBar],고점[1,1]); TL_SetExtRight(TL2,False); TL2 = TL_New(sDate[1],sTime[1],고점[1,1],sdate,sTime,고점[1,1]); TL_SetColor(TL2,BLUE); TL_SetSize(TL2,2); If 고점[3,1] < 고점[2,1] and 고점[2,1] > 고점[1,1] and 저점[2,1] < 저점[1,1] Then { sBar = Index - 저점[2,2]; eBar = Index - 저점[1,2]; } } } If 처리구분 == "저점처리" Then { T = -1; lastLoVal = L; If 저점[1,2] < 고점[1,2] Then { For j = 10 DownTo 2 { 저점[j,1] = 저점[j-1,1]; 저점[j,2] = 저점[j-1,2]; } } If 저점[1,2] < 고점[1,2] or 저점[1,1] > L Then { 저점[1,1] = L; 저점[1,2] = Index; sBar = Index - 고점[1,2]; eBar = 0; If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then { TL_Delete(TL1); TL_Delete(TL3); } TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],sDate[eBar],sTime[eBar],저점[1,1]); TL_SetExtRight(TL3,False); TL3 = TL_New(sDate[1],sTime[1],저점[1,1],sdate,sTime,저점[1,1]); TL_SetColor(TL3,RED); TL_SetSize(TL3,2); If 저점[2,1] < 저점[1,1] and 저점[2,1] < 저점[3,1] and 고점[2,1] > 고점[1,1] Then { sBar = Index - 고점[2,2]; eBar = Index - 고점[1,2]; } } } TL_SetSize(TL1,0); TL_SetColor(TL1,YELLOW); TL_SetEnd(TL2,sdate,stime,고점[1,1]); TL_SetEnd(TL3,sdate,stime,저점[1,1]); TL_SetExtRight(TL2,true); TL_SetExtRight(TL3,true); if T != T[1] then { if T == 1 Then { HH = 고점[2,1]; LL = 저점[1,1]; ii = index-고점[2,2]; diff = abs(HH-LL); } Else { HH = 고점[1,1]; LL = 저점[2,1]; ii = index-저점[2,2]; diff = abs(HH-LL); } TL_Delete(TL41); TL_Delete(TL42); TL_Delete(TL43); TL_Delete(TL44); TL_Delete(TL45); TL_Delete(TL46); TL41 = TL_New(sdate[ii],stime[ii],LL+diff*2.00,sdate,stime,LL+diff*2.00); TL42 = TL_New(sdate[ii],stime[ii],LL+diff*2.618,sdate,stime,LL+diff*2.618); TL43 = TL_New(sdate[ii],stime[ii],LL+diff*3.618,sdate,stime,LL+diff*3.618); TL44 = TL_New(sdate[ii],stime[ii],HH-diff*2.00,sdate,stime,HH-diff*2.00); TL45 = TL_New(sdate[ii],stime[ii],HH-diff*2.618,sdate,stime,HH-diff*2.618); TL46 = TL_New(sdate[ii],stime[ii],HH-diff*3.618,sdate,stime,HH-diff*3.618); TL_SetExtRight(TL41,true); TL_SetExtRight(TL42,true); TL_SetExtRight(TL43,true); TL_SetExtRight(TL44,true); TL_SetExtRight(TL45,true); TL_SetExtRight(TL46,true); TL_SetSize(TL41,2); TL_SetSize(TL42,2); TL_SetSize(TL43,2); TL_SetSize(TL44,2); TL_SetSize(TL45,2); TL_SetSize(TL46,2); }
프로필 이미지
하늘북
2020-11-09
520
글번호 143706
시스템
답변완료

수식문의 드립니다

안녕하세요. 이전에 주신 답변 먼저 감사드립니다. 그런데 제가 잘 이해가 안되는 부분이 있어 다시 문의드립니다. 1) 아래의 수식은 어떤 의미일까요? if sDate != sDate[1] Then Condition1 = true; 지금 현재 날짜가 오늘과 같지 않다면, (해석이 맞는지요?) 조건을 만족한다는 것일지요? 저는 오늘 캔들들에 대해서만 조건 만족하는 수식을 찾고 있었는데 위의 해석으로는 뭔가 이상해서요.. 2) 아래 수식에서, if C < var1 Then Condition1 = False; var1 은 이평선 함수가 들어갈 부분일지요? 예를 들어 이평선 5를 넣는다면, var1 = ma(C, 5)가 되는 것일지요? 감사합니다. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 문의 드립니다. > 안녕하세요 예스스탁입니다. 분봉주기에서 검색하시면 됩니다. 종목검색의 속성에서 검색에 필요한 최소기간에 해당 분봉의 하루치 봉수 이상을 지정해 주셔야 합니다. 종목검색은 최대 500봉 제공되므로 500봉 지정하고 검색하시면 됩니다. if sDate != sDate[1] Then Condition1 = true; if C < var1 Then Condition1 = False; if Condition1 == true Then Find(1); 즐거운 하루되세요 > ywesry 님이 쓴 글입니다. > 제목 : 수식 문의 드립니다. > 안녕하세요. 종목검색 수식이 필요한데 아래와 같은 수식 구현이 가능할지요? 만약 현재시간이 오전 10시라고 가정하면 장시작한 시간부터 현재까지의 분봉 캔들들이 이평선 위에 있으면 검색 즉 그 이전의 봉들 (가령 어제 봉들)은 하나도 포함시키지 않고 오늘 날짜의 장시작 이후 캔들들만을 조건으로 검색을 하고 싶습니다. 도움 부탁드립니다.
프로필 이미지
ywesry
2020-11-09
559
글번호 143705
사용자 함수
답변완료

행복; 시스템식 작성 바랍니다

한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다 시스템식 관련입니다 <<< 조건 >>> < 매수 > * 주기; 일봉 * 누적 매수 회수; 최대 10회 (MaxEntries = 10) * 회수별 매수 수량; 1차 10주, 2차 11주, 3차 12주, 4차 13주, 5차 14주 , 6차 15주, 7차 16주, 8차 17주, 9차 18주, 10차 19주 * 1일차; 종가(onclose) 매수 - 당일 종가에 1차 매수 * 2일차; 즉시(atlimit) 매수 - 전일 종가 대비 하락하면 매수하지 말고 - 2% 상승시 2차 매수, 4% 상승시 3차 매수.... - 즉, 2% 상승할 때마다 누적 매수 회수 10차 될 때까지 즉시 매수 * 3일차; 즉시(atlimit) 매수 - 전일까지 누적 매수 10차까지 매수되지 않은 경우 10차를 채울 때까지 나머지 회차를 매수 - 전일 종가 대비 하락하면 매수하지 말고 - 3% 상승시 추가 매수, 6% 상승시 추가 매수...... - 즉, 3% 상승할 때마다 누적 매수 회수 10차 될 때까지 즉시 매수 ~~~~~~~~ ~~~~~~~~ ~~~~~~~~ * N일차; 즉시(atlimit) 매수 - 전일까지 누적 매수 10차까지 매수되지 않은 경우 10차를 채울 때까지 나머지 회차를 매수 - 전일 종가 대비 하락하면 매수하지 말고 - N% 상승시 추가 매수, ( N * 2 )% 상승시 추가 매수...... - 즉, N% 상승할 때마다 누적 매수 회수 10차 될 때까지 즉시 매수 < 매도 > * 즉시(atstop) 매도 * 당일 고점 대비 30% 하락시 * 보유 주식 전량 매도 후 추가 매수 금지 수고하십시요^^
프로필 이미지
행복한가방
2020-11-08
609
글번호 143704
시스템
답변완료

지표문의

차트에 지표는 아래입니다. var : TextID(0),HH(0),LL(0); If H == dayhigh Then LL = L; If L < LL Then LL = L; If L == daylow Then HH = H; If H > HH Then HH = H; Var1 = HIGHEST(HIGH, 1); Var2 = LOWEST(LOW, 1); Var3 = LL+((HH-LL)*0.236); Var4 = LL+((HH-LL)*0.764); Var5 = LL+((HH-LL)*0.382); Var6 = LL+((HH-LL)*0.618); Var7 = LL+((HH-LL)*0.146); Var8 = LL+((HH-LL)*0.854); If DayHigh-DayLow>(PriceScale*10) and Var4-Var3>=(PriceScale*5) Then{ plot1(LL,"현저"); plot2(HH,"현고"); If Var2<>LL AND Var2<>LL[1] and Low<>DayLow and Low>=LL[1] Then{ Plot3(LL+((HH-LL)*0.236),"현2"); plot4(LL+((HH-LL)*0.146),"현1"); } Plot5(LL+((HH-LL)*0.382),"현3"); If Low<> DayLow and High<>DayHigh Then { Plot6((LL+HH)/2,"현중"); } Plot7(LL+((HH-LL)*0.618),"현6"); If Var1<>HH AND Var1<>HH[1] and High<>DayHigh and High<=HH[1] Then{ Plot8(LL+((HH-LL)*0.764),"현7"); plot9(LL+((HH-LL)*0.854),"현8"); } } HH가 높아졌을때 중간저가(오늘저가나 LL이 아님 / 61.8%아래 최저가)를 체크하는 지표를 표시하도록 해주세요. LL이 낮아졌을때 중간고가(오늘고가나 HH는 아님 / 38.2%위에 최고가)를 체크하는 지표를 표시하도록 해주세요. 차트그림설명 참조 감사합니다.
프로필 이미지
신념의마력
2020-11-09
719
글번호 143703
지표
답변완료

그물망

지수이동평균선(그물망) 가격:종가 기간:5일선 간격:1 종류:지수 상승,하락시 각각색깔나올수있게부탁드립니다 5일선종가"크로스" 표시좀 부탁드립니다
프로필 이미지
용각산
2020-11-08
749
글번호 143702
지표
답변완료

진입,청산

매수 : 당일 고점돌파하고난후 당일중심가격까지 떨어지면 중심가격에서 매수 손절: 당일 저점 익절: 매수후 당일고점돌파 일봉의 0.232% 돌파가격에서 청산. 매도 : 당일 저점돌파하고난후 당일중심까지 올라가면 중심가격에서 매도 손절 : 당일고점 익절 : 매도후 당일저점돌파 일봉의 0.232% 내려가면 내려간가격에서 청산. 부탁드립니다.
프로필 이미지
신나는파파
2020-11-08
602
글번호 143701
시스템
답변완료

문의

답변 고맙습니다. 아래 내용도 가능하시면 날짜 수식 부탁드립니다. 1) 옵션 만기주 한 주 전 금요일, 옵션 만기주 월요일, 화요일 2) 옵션 만기주 수요일,목요일 ******************************************************************************** 안녕하세요 예스스탁입니다. DayOfWeek에 날짜를 지정하면 요일이 리턴됩니다. 월요일 1, 화요일 2, 수요일 3, 목요일 4, 금요일 5, 토요일 6, 일요일 0 if DayOfWeek(Bdate) == 3 or DayOfWeek(Bdate) ==4 Then { 진입청산수 } 즐거운 하루되세요 > 좌오비우오비 님이 쓴 글입니다. > 제목 : 문의 > 매주 수요일과 목요일만 거래하는 날짜 수식 부탁드립니다.
프로필 이미지
좌오비우오비
2020-11-08
609
글번호 143700
시스템
답변완료

부탁 드립니다.

도움에 감사 드립니다. 질문 수식을 타주기(분봉용)식으로 어슬픈 지식으로 작성 해본것입니다. 1)타주기(분봉용)식을 정상적인지 검토와 2)타주기(틱봉용)과 3)타주기(분봉에서 일봉지표)식 부탁 드립니다. 미리 경배로 감사 인사 올립니다. 질문수식) var : src(0),a(0),b(0),size(0); if a[1] > a[2] Then { Condition1 = true; var1 = 0; } Else { if Condition1 == true Then var1 = var1+1; } if b[1] < b[2] Then { Condition2 = true; var2 = 0; } Else { if Condition2 == true Then var2 = var2+1; } size = iff((a[1]-a[2]) > 0 or (b[1]-b[2]) < 0 , atr(length) ,TrueRange); a = max(c,a[1]) - size/pow(length,2)*(var1*mult); b = min(c,b[1]) + size/pow(length,2)*(Var2*mult); var11=(a+b)/2; var3=c-var11;; var33=ma(var3,sig); *타주기(분봉)식 input : 타주기분(30),length(60),mult(1),sig(5); var : S1(0),D1(0),TM(0),TF(0),cnt(0),idx(0); //타주기식_TrueRange var : HH(0),LL(0),C1(0); Array : cc10[101](0),TH[101](0),TL[101](0),TR[101](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%타주기분; 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 { HH = H; LL = L; C1 = CC10[1]; for cnt = 1 to 100 { TH[cnt] = TH[cnt-1][1]; TL[cnt] = TL[cnt-1][1]; TR[cnt] = TR[cnt-1][1]; } } if H > HH Then HH = H; if L < LL Then LL = L; CC10[0] = c; TH[0] = max(C1,HH); TL[0] = Min(C1,LL); TR[0] = TH[0]-TL[0]; } //타주기식_ATR var : hht2(0),LL3(0),C13(0),CC3(0); var : sumTR(0),ATRV(0); Array : TH3[101](0),TL3[101](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%타주기분; 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 { HH = H; LL = L; c13 = cc3[1]; for cnt = 1 to 100 { TH[cnt] = TH[cnt-1][1]; TL[cnt] = TL[cnt-1][1]; } } if H > HH Then HH = H; if L < LL Then LL = L; cc3 = c; TH[0] = max(c13,HH); TL[0] = Min(c13,LL); if TH[length-1] > 0 and TL[length-1] > 0 then { sumTR = 0; for cnt = 0 to length-1 { sumTR = sumTR + (TH[cnt]-TL[cnt]); } ATRV = sumTR/length; } } var:size(0),sum(0); Array : CC[101](0),a[101](0),b[101](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%타주기분; 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 { idx = idx+1; for cnt = 1 to 100 { CC[cnt] = CC[cnt-1][1]; a[cnt] = a[cnt-1][1]; b[cnt] = b[cnt-1][1]; } if a[1] > a[2] and a[2] > 0 Then { Condition1 = true; value1 = idx[1]; } if b[1] < b[2] and b[2] > 0 Then { Condition2 = true; Value2 = idx[1]; } } CC[0] = C; if Condition1 == true Then var1 = idx-value1; if Condition2 == true Then var2 = idx-Value2; if a[2] > 0 and b[2] > 0 then size = iff((a[1]-a[2]) > 0 or (b[1]-b[2]) < 0 ,atrv , tr[0]); Else size = 0; if a[1] == 0 Then { a[0] = CC[0] - size/pow(length,2)*(var1*mult); } Else if idx > 3 Then { a[0] = max(CC[0],a[1]) - size/pow(length,2)*(var1*mult); } if b[1] == 0 Then { b[0] = CC[0] + size/pow(length,2)*(Var2*mult); } Else if idx > 3 Then { b[0] = min(CC[0],b[1]) + size/pow(length,2)*(Var2*mult); } var11 = (a[0]+b[0])/2; Var3 = CC[0]-var11; if a[sig-1] > 0 and b[sig-1] > 0 Then { sum = 0; For cnt = 0 to sig-1 { sum = sum + (CC[cnt] - (a[cnt]+b[cnt])/2); } Var33 = sum/sig; } }
프로필 이미지
뮬리
2020-11-08
586
글번호 143699
지표
답변완료

수식 문의

안녕하세요? data2나 data3에 있는 종목의 거래량과 OBV 를 어떻게 표현하나요? 또한, 분봉에서 data2나 data3 종목의 어제/그저께의 최고/최저값은 어떻게 표현하나요? 감사합니다.
프로필 이미지
에구머니
2020-11-09
610
글번호 143698
지표
답변완료

수식 문의 드립니다.

(1)매수식 거래시간 한국시간 기준 19시부터 익일 02시 50분까지 1,첫번째 양봉에 매수 손절=-15틱 익절=+30틱 2.손절 또는 익절 청산후 다음봉 양봉에 매수 3.매수진입 총한도 12회 (2)매도식 1.첫번째 음봉에 매도 손절=-15틱 익절=+30틱 2.손절 또는 익절 청산후 다음봉 음봉에 매도 3.매도진입 총한도 12회 매수식과 매도식을 분리 운영할 계획입니다. 손절과 익절 및 진입횟수는 외부변수로 작성가능 부탁드리겠습니다. (3)True Strength Index 지표를 기준으로 ERGOTIC가 SIGLIN을 골든크로스 하면 양봉에 매수 데드크로스이면 음봉에 매도식 부탁드립니다.
프로필 이미지
황금룰
2020-11-07
755
글번호 143697
시스템