커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내

안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
프로필 이미지
예스스탁
2026-02-27
4351
글번호 230811
지표
답변완료

수식부탁드립니다

1. 전일 중심을 그린다 당일 중심을 그린다 오전9시 동시호가부터 오전9시반까지 구간 천정 가격을 그린다 오전9시 동시호가부터 오전9시반까지 구간 바닥 가격을 그린다 오전9시 동시호가부터 오전10시까지 구간 천정 가격을 그린다 오전9시 동시호가부터 오전10시까지 구간 바닥 가격을 그린다 당일 중심이 전일 중싱보다 낮을 경우 오전9시 동시호가부터 오전9시반까지 구간 바닥 가격~전일 중심 폭의 하방 대칭을 그린다 오전9시 동시호가부터 오전10시 까지 구간 바닥 가격~전일 중심 폭의 하방 대칭을 그린다 당일 중심이 전일 중심보다 높을 경우 오전9시 동시호가부터 오전9시반까지 구간 천정 가격~전일 중심 폭의 상방 대칭을 그린다 오전9시 동시호가부터 오전10시 까지 구간 천정 가격~전일 중심 폭의 상방 대칭을 그린다 감사합니다
프로필 이미지
회원
2017-07-26
129
글번호 111582
지표
답변완료

안녕하세요

아래 고점 저점 추세식에서 저점(or 고점) 이 확정 되었을때 그 틱수가 가령 20틱이라면 중간인 10틱에 수평선을 그을수 있을까요? 물론 전(저점 or 고점이) 확정되었다가 변동될수도 있으므로 수평선도 그에 따라 유동적으로 바뀌어지겠지요 가능할런지요? 전저점에서 전고점확정되어지고 현재전저점을 향해가고있다면 현재값이 전저점과 전고점의 중간값을 크로스 다운(or 크로스 업)할때 수평선을 긋는 방법이 나을까요 ? 가능하다면 1/2 or 1/3 등도 변경하여 참고해서 쓰고 싶습니다. Input:length(50); Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),T(0), Text1(0),처리구분(""); Array:고점[10,2](0),저점[10,2](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 { 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); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1], sDate[eBar],sTime[eBar],고점[1,1]); Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1], NumToStr(고점[1,1],1)); Text_SetStyle(Text1, 0, 0);#(Text1, 2, 1); } } If 처리구분 == "저점처리" Then { 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); Text_Delete(Text1); } TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1], sDate[eBar],sTime[eBar],저점[1,1]); Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1], NumToStr(저점[1,1],1)); Text_SetStyle(Text1, 2, 0);#(Text1, 2, 0); } } TL_SetSize(TL1,3); TL_SetColor(TL1,BLUE); If 처리구분 == "고점처리" Then T = 1; If 처리구분 == "저점처리" Then T = -1;
프로필 이미지
자라도
2017-07-26
110
글번호 111581
지표
답변완료

Volatitiy Percent 에 대한 문의

반갑습니다. 무더위에 수고가 많으십니다. " Volatility percent "이해가 되지 않는 부분이 있어 문의 드립니다. 하기와 같은 코딩 내용중, " ATRperiod(5)는 (TR=고가-시가)의 5평균값으로 명확기 정의가 되는데 VtyPercent(0.75)의 경우 Log값의 제곱근으로 이해는되나 명확히 수학적 산식이 코딩 내용으로는 잘 알수 없어서 이에 대한 설명을 부탁드리는 바입니다. 질문 1. VtyPercent(0.75)의 수학적 산식 질문 2. 하기 코딩의 내용 설명 감사합니다. Inputs: VtyPercent(0.75),ATRperiod(5); If MarketPosition() <> 1 Then Buy ("Vty_LE", AtStop, Close + (VtyPercent * ATR(ATRperiod))); If MarketPosition() <> -1 Then Sell ("Vty_SE)", AtStop, Close - (VtyPercent * ATR(ATRperiod)));
프로필 이미지
냉철한열정
2017-07-26
128
글번호 111580
시스템
답변완료

전일 실제움직임에 대한 문의

안녕하세요!! 관리자님 무더운 여름 건강관리 잘하시길 바랍니다. 저의 지표는 항상 전일의 움직임이 기준이 되는데요... 전일의 분차트에서 봉의 갯수가 n개라하면 1)(전일1번째고가-전일시가)+(전일2번째고가-전일시가)+(전일3번째고가-전일시가)............ +(전일n번째고가-전일시가) 2)(전일1번째저가-전일시가)+(전일2번째저가-전일시가)+(전일3번째저가-전일시가)............ +(전일n번째저가-전일시가) 3)(전일1번째종가-전일시가)+(전일2번째종가-전일시가)+(전일3번째종가-전일시가)............ +(전일n번째종가-전일시가) 이런식으로 계산된 고가,저가,종가의 각각의 값을 구해서 오늘의 시가를 더한 값을 오늘차트에 표현하고 싶습니다. 글로 표현해서 이해가 되셨나 모르겠습니다. 부탁드립니다.
프로필 이미지
카카
2017-07-26
114
글번호 111578
지표
답변완료

IsNaN 사용법 문의

항상 신속하고 상세한 답변 감사드립니다. << 아래 수식에서 >> 차월물이 자주 N/A 가 나타나서 그럴경우 지표의 색을 검정으로 출력하게하고 싶은데 잘 안되고 있습니다. 어디에 문제가 있는지 도와 주시기 부탁드립니다. ------------ 아 래 ------------ //===선물 스프레드 var : 당월물(0), 차월물(0), 스프레드(0), 막대색(0); 당월물 = Data1(C); 차월물 = Data2(C); 스프레드 = (차월물 - 당월물); If 스프레드 - 스프레드[1] > 0 Then 막대색 = RED; else 막대색 = BLUE; If IsNaN(차월물) == True Then 막대색 = BLACK; plot21(스프레드, "스프레드", 막대색);
프로필 이미지
스퍼트시커
2017-07-26
122
글번호 111577
지표
답변완료

목표가 도달

목표가에 도달했을 경우 진입하는 수식 2개 부탁드립니다. 1. buy 수식 input -start time : 100000(10시부터 수식계산) -목표가 : 320.00 -익절 : n 틱 -손절 : n 틱 -거래횟수 : n 2. sell 수식 input -start time : 100000(10시부터 수식계산) -목표가 : 320.00 -익절 : n 틱 -손절 : n 틱 -거래횟수 : n 늘 고맙습니다.
프로필 이미지
목마와숙녀
2017-07-26
119
글번호 111575
시스템
답변완료

문의드립니다

바쁘시겠지만 부탁드립니다 수고하세요 신호로 바꾸주시면 감사하겠습니다 기준선 상승돌파시매수 , 하락돌파시 매도 Input:tick(3); Input:BBPeriod(12), MultiD(2); Var:j(0),k(0),n(0),trend(0),tickVal(0),oneTick(0),count(0),remain(0); var:Sum(0),SumPow(0),MApow(0),STDv(0); Array:OO[1000](0),HH[1000](0),LL[1000](0),CC[1000](0),val[4](0); Array:MAv[1000](0),BBup[1000](0),BBdn[1000](0); #==============================================================================# # Range Bar Chart 계산 #==============================================================================# If Index == 0 Then { tickVal = tick * PriceScale; oneTick = PriceScale; OO[0] = O; HH[0] = O; LL[0] = O; CC[0] = O; } count = 0; val[0] = O; val[3] = C; If O > C Then { val[1] = H; val[2] = L; If L < C Then trend = 1; Else trend = -1; } Else If O < C Then { val[1] = L; val[2] = H; If H > C Then trend = -1; Else trend = 1; } Else If C[1] > O Then { val[1] = L; val[2] = H; If H > C Then trend = -1; Else trend = 1; } Else If C[1] < O Then { val[1] = H; val[2] = L; If L < C Then trend = 1; Else trend = -1; } Else If trend == 1 Then { val[1] = H; val[2] = L; If L < C Then trend = 1; Else trend = -1; } Else If trend == -1 Then { val[1] = L; val[2] = H; If H > C Then trend = -1; Else trend = 1; } For k = 0 To 3 { If HH[0] > 0 && HH[0] < val[k] Then { While val[k] - LL[0] > tickVal { HH[0] = LL[0] + tickVal; CC[0] = HH[0]; For j = 998 DownTo 0 { OO[j+1] = OO[j]; HH[j+1] = HH[j]; LL[j+1] = LL[j]; CC[j+1] = CC[j]; } count = count + 1; OO[0] = HH[1] + oneTick; LL[0] = OO[0]; } If val[k] - LL[0] <= tickVal Then { HH[0] = val[k]; CC[0] = val[k]; } } Else If LL[0] > val[k] Then { While HH[0] - val[k] > tickVal { LL[0] = HH[0] - tickVal; CC[0] = LL[0]; For j = 998 DownTo 0 { OO[j+1] = OO[j]; HH[j+1] = HH[j]; LL[j+1] = LL[j]; CC[j+1] = CC[j]; } count = count + 1; OO[0] = LL[1] - oneTick; HH[0] = OO[0]; } If HH[0] - val[k] <= tickVal Then { LL[0] = val[k]; CC[0] = val[k]; } } Else { CC[0] = val[k]; } } input : 전환선기간(9),기준선기간(26),선행스팬2기간(52); var : cnt(0),H1(0),L1(0),H11(0),L11(0),H2(0),L2(0),H22(0),L22(0),H3(0),L3(0); var : 전환선(0),기준선(0),선행스팬1(0),선행스팬2(0); if HH[선행스팬2기간+25] > 0 and LL[선행스팬2기간+25] > 0 then{ H1 = HH[0]; L1 = LL[0]; H11 = HH[25]; L11 = LL[25]; H2 = HH[0]; L2 = LL[0]; H22 = HH[25]; L22 = LL[25]; H3 = HH[25]; L3 = LL[25]; for cnt = 0 to 선행스팬2기간-1{ if cnt < 전환선기간 Then{ if HH[cnt] > H1 Then H1 = HH[cnt]; if LL[cnt] < L1 Then L1 = LL[cnt]; if HH[cnt+25] > H11 Then H11 = HH[cnt+25]; if LL[cnt+25] < L11 Then L11 = LL[cnt+25]; } if cnt < 기준선기간 Then{ if HH[cnt] > H2 Then H2 = HH[cnt]; if LL[cnt] < L2 Then L2 = LL[cnt]; if HH[cnt+25] > H22 Then H22 = HH[cnt+25]; if LL[cnt+25] < L22 Then L22 = LL[cnt+25]; } if HH[cnt+25] > H3 Then H3 = HH[cnt+25]; if LL[cnt+25] < L3 Then L3 = LL[cnt+25]; } 전환선 = (H1 + L1)/2; 기준선 = (H2 + L2)/2; 선행스팬1 = ((H11+L11)/2 + (H22+L22)/2) / 2 ; 선행스팬2 = (H3+L3) / 2; plot1(기준선); }
프로필 이미지
강인함
2017-07-26
131
글번호 111574
지표
답변완료

문의

k=RSi(14); a1= crossup(k,30); x1=ValueWhen(1,a1,L); x2=ValueWhen(1,a1,H); x2 k=RSi(p1); a1= crossup(k,30); x1=ValueWhen(1,a1,L); x2=ValueWhen(1,a1,H); x1
프로필 이미지
레전드
2017-07-26
108
글번호 111573
지표
답변완료

안녕하세요?

안녕하세요? 당일 청산기준으로 손실이 -100틱이상일때 매매종료하는 수식 부탁드립니다. bl22,bl11,sl22,sl11 은 진입가청산이지만 수식작성시 포함해주세요 if MarketPosition == 1 and MaxContracts == 3 then{ if CurrentContracts == 3 then{ exitlong("bl31",AtStop,EntryPrice-PriceScale*20,"",1,1); } if CurrentContracts == 2 then{ exitlong("bl21",AtStop,EntryPrice-PriceScale*5,"",1,1); exitlong("bl22",AtStop,EntryPrice,"",1,1); } if CurrentContracts == 1 then{ exitlong("bl11",AtStop,EntryPrice,"",1,1); } } if MarketPosition == -1 and MaxContracts == 3 then{ if CurrentContracts == 3 then{ ExitShort("sl31",AtStop,EntryPrice+PriceScale*20,"",1,1); } if CurrentContracts == 2 then{ ExitShort("sl21",AtStop,EntryPrice+PriceScale*5,"",1,1); ExitShort("sl22",AtStop,EntryPrice,"",1,1); } if CurrentContracts == 2 then{ ExitShort("sl11",AtStop,EntryPrice,"",1,1); } }
프로필 이미지
상중하
2017-07-26
120
글번호 111572
시스템