커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1501
글번호 230811
답변완료
부탁 드립니다..
도움에 감사 드립니다.가)과거 N봉동안에서(예100봉전)직전1봉전에 저가가 현재봉 종가보다 같거나 큰경우에서그것의 차이값 즉 L[1]-C를 A라하고 P개가 있다면 이런경우를 모두 합하고 D라칭함.D를 P로나눈값X(즉 평균값)1)이X값을 마지막 종가 수평선 위에 숫자로 표시2)P값/N값 (예 60/100)을 수평선 위에 숫자로 표시1)과2)의 표시예60/100 15.7256나)과거 N봉동안에서(예100봉전)직전1봉전에 고가가 현재봉 종가보다 같거나 작은경우에서그것의 차이값 즉 C-H[1]를 B라하고 Q개가 있다면 이런경우를 모두 합하고 F라칭함.F를 Q로나눈값Y(즉 평균값)3)이Y값을 마지막 종가 수평선 아래에 숫자로 표시4)Q값/N값 (예 40/100)을 수평선 아래에 숫자로 표시3)과4)의 표시예40/100 13.1234다)과거 N봉동안에서(예100봉전)L[1]-C의 값을 AA라하고 이것을 모두 합한 다음AA를 N봉수로 나눈값XX(즉 평균값)11)이XX값을 수평선의 적당한 위치에 숫자로 표시라)과거 N봉동안에서(예100봉전)C-H[1]의 값을 BB라하고 이것을 모두 합한 다음BB를 N봉수로 나눈값YY(즉 평균값)11)이YY값을 수평선의 적당한 위치에 숫자로 표시미리 감사 드립니다.
2026-02-01
281
글번호 230224
답변완료
문의 드립니다.
안녕하세요 즐거운 주말 보내시길 바랍니다. DIPlus(14) 가 DIMinus(14) 를 cross up 하거나, DIPlus(16) 가 DIMinus(16) 을 Cross up 하는 종목의 검색식을 부탁 드립니다. 감사합니다.
2026-01-31
208
글번호 230223
심리스 님에 의해서 삭제되었습니다.
2026-01-31
30
글번호 230222
답변완료
편집기내 사용할수 있는 최대 라인수 제한 있나요?
안녕하세요yeslang 편집기에서 사용 할 수 있는 최대 라인수가 제한되어 있나요?예를들어 5만라인을 사용한다면 문제가 될까요?문제가 되면 사용자 함수로 처리하면 되나요?
2026-01-31
132
글번호 230220
답변완료
vwap검색식
재미나이의 도움을받아 vwap검색식을 만들어보았으나 반영이 제대로 되지않는것같아 문의드립니다이건 일봉상 vwap아래에있는 조건식Input : Period(250); Var : TargetIndex(0), count(0), sumPV(0), sumV(0), AutoAVWAP(0), vM(0), HighVol(0);// 1. 기간 내 최고 거래량 값 찾기HighVol = Highest(V, Period);// 2. 최고 거래량이 발생한 위치(현재로부터 몇 봉 전인지) 찾기TargetIndex = -1;for count = 0 to Period - 1 { if TargetIndex == -1 and V[count] == HighVol Then TargetIndex = count;}// 3. 기준봉을 찾았고 데이터가 충분할 때만 계산if TargetIndex >= 0 and Index >= Period Then { sumPV = 0; sumV = 0; // 4. 앵커(기준봉)부터 현재까지의 누적 VWAP 계산 for count = 0 to TargetIndex { vM = (H[count] + L[count] + C[count]) / 3; sumPV = sumPV + vM * V[count]; sumV = sumV + V[count]; } if sumV > 0 Then { AutoAVWAP = sumPV / sumV; // 5. 조건 설정: 주가가 검은선(AutoAVWAP)보다 아래에 있는 종목만 검색 if C < AutoAVWAP Then Find(1); }}이건 주가가 vwap밴드 보다 위에있는 조건식Input : Period(250), D2(2); Var : TargetIndex(0), count(0), sumPV(0), sumV(0), AutoAVWAP(0);Var : sumVar(0), StdDev(0), LowerBand(0), vM(0); // M을 vM으로 변경// 1. 데이터 확보 및 최고 거래량 지점 찾기if Index >= Period Then { TargetIndex = MRO(V == Highest(V, Period), Period, 1); sumPV = 0; sumV = 0; // 2. 앵커 시점부터의 VWAP(평균가격) 계산 for count = 0 to TargetIndex { vM = (H[count] + L[count] + C[count]) / 3; sumPV = sumPV + vM * V[count]; sumV = sumV + V[count]; } if sumV > 0 Then { AutoAVWAP = sumPV / sumV; // 3. 표준편차 계산을 위한 편차 제곱합 계산 sumVar = 0; for count = 0 to TargetIndex { vM = (H[count] + L[count] + C[count]) / 3; sumVar = sumVar + V[count] * Pow(vM - AutoAVWAP, 2); } // 4. 하단 밴드 산출 (표준편차 적용) StdDev = SQRT(sumVar / sumV); LowerBand = AutoAVWAP - (D2 * StdDev); // 5. 조건: 주가가 하단 밴드보다 위에 있는 종목 검색 if C > LowerBand Then Find(1); }}이렇게 적용시켜보았으나 vwap보다 높은위치에 있는 종목이 걸러질때가 있던데 어떻게 수정하면 좋을지 문의드립니다
2026-01-31
394
글번호 230218
답변완료
신호검색식과 강조식 부탁드립니다.
1.현재가가 일목균형표상 구름층 상단보다 위에 있을때 구름층 상단(즉,선행스팬1)과의 이격도가 110 이상일 때 이를 표시해주는 강조식2.현재가가 일목균형표상 구름층 하단보다 아래에 있을때 구름층 하단(즉,선행스팬2)과의 이격도가 90 이하일 때 이를 표시해주는 강조식이게 가능할까요?
2026-01-31
129
글번호 230216
답변완료
부탁드립니다
A=sum(C*V,26)/sum(V,26);Crossup(C,A);
2026-01-30
139
글번호 230215
답변완료
경과봉 적용 시점
두번째 진입에서 경과봉을 필터로 사용하고 있습니다.경과봉 적용할 때 시간을 넣어서 필터로 사용하고 싶습니다.기존 수식input : 경과봉(0),b2(70),진입눌림2(18),진입돌파2(6);요청수식input : 경과봉적용시작(120000), 경과봉적용해제(140000),경과봉(0),b2(70),진입눌림2(18),진입돌파2(6);위 내용대로 작동되도록 수식 추가 부탁드립니다.항상 고맙습니다.*****************************************************************************************************************************input : 최대(999999),최소(700);input : 진입시간(084500),진입제한시간(144500);input : 거래횟수(50);input : b1(95),진입눌림1(28),진입돌파1(0);input : 경과봉(0),b2(70),진입눌림2(18),진입돌파2(6);var : T1(0),entry(0),LL(0),EH(0),E1(0),H1(0),i1(0),S1(0),L1(0),V1(0);var : Tcond(false);if (sdate != sdate[1] and stime >= 진입시간) or (sdate == sdate[1] and stime >= 진입시간 and stime[1] < 진입시간) Then Tcond = true; if (sdate != sdate[1] and stime >= 진입제한시간) or (sdate == sdate[1] and stime >= 진입제한시간 and stime[1] < 진입제한시간) Then Tcond = false; if (sdate != sdate[1] and stime >= 진입시간) or (sdate == sdate[1] and stime >= 진입시간 and stime[1] < 진입시간) Then{ T1 = TotalTrades; E1 = 0; LL = L;}if stime >= 진입시간 then{ if L < LL Then LL = L; if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = (TotalTrades-T1)+1; if MarketPosition == 0 and entry == 0 Then{ if E1 == 0 and C >= LL+PriceScale*B1 Then{ E1 = 1; H1 = H; i1 = index; V1 = LL; //시작점 종가 } if E1 == 1 and index > i1 then{ if H > H1 Then H1 = H; #저가가 시작봉종가보다 클때만 눌림체크 if L >= V1 and L <= H1-PriceScale*진입눌림1 Then{ E1 = 2; i1 = index; S1 = H1; } } //시작점 종가보다 낮은 가격이 발생하면 초기화 if E1 >= 1 and L < V1 Then{ E1 = 0; LL = L; } if E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파1 and Tcond == true and 최대 >= C and C >= 최소 Then{ buy("b1"); } } if TotalTrades > TotalTrades[1] Then{ E1 = 0; LL = L; } if L < LL Then LL = L; if MarketPosition == 0 and entry >= 1 and entry < 거래횟수 Then{ if E1 == 0 and C >= LL+PriceScale*B2 Then{ E1 = 1; H1 = H; i1 = index; V1 = LL; //시작점 종가 } if E1 == 1 and index > i1 then{ if H > H1 Then H1 = H; #저가가 시작봉종가보다 클때만 눌림체크 if L >= V1 and L <= H1-PriceScale*진입눌림2 Then{ E1 = 2; i1 = index; S1 = H1; } } //시작점 종가보다 낮은 가격이 발생하면 초기화 if E1 >= 1 and L < V1 Then{ E1 = 0; LL = L; } if (TotalTrades == 0 or (TotalTrades >= 1 and BarsSinceExit(1) > 경과봉)) and E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파2 and Tcond == true and 최대 >= C and C >= 최소 Then{ buy("b2"); } }}
2026-01-30
405
글번호 230209
답변완료
문의 드립니다
TL_SetColor(TL1, Red);TL_SetExtRight(TL1,true);TL_SetSize(TL1,8);if var2 <> var2[1] Then { TL_delete(TL2); Ldate0 = sdate; Ldate1 = sDate[Length]; Ltime0 = stime; Ltime1 = sTime[Length]; Lval = L[Length]; TL2 = TL_New(Ldate1, Ltime1, Lval, Ldate0, Ltime0, Lval); }TL_SetColor(TL2, Blue);TL_SetExtRight(TL2,true);TL_SetSize(TL2,8);-------------------------------------TL 사이즈를 8로 설정해도 라인이 굵어지지 않고 그냥 기본으로 나옵니다TL 라인 굵기를 두껍게 하고 싶은데 ...설정하려면 어떻게 해야하나요?두께를 임의로 설정할수 있음 좋겠어요감사합니다
2026-01-30
156
글번호 230208