커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4381
글번호 230811
답변완료
간단한 문의드립니다.
아래 식에서
MarketPosition(1) == 1 의 수식 의미를 풀어서 설명 부탁드립니다.
if MarketPosition == 0 and
MarketPosition(1) == 1 and
IsEntryName("Buy",1) == true and
IsExitName("B익절1",1) == true and
mav2 > mav3 and
mav2 > mav2[1] Then
buy("reBuy");
2018-05-18
165
글번호 119017
답변완료
수식부탁드립니다=========
아래식은 주차트에만적용되는데요 호가잔량오실레이터와같이 다른지표에적용할수는없나요?
input : Left(5),Right(5);
var : SH(0),SL(0);
var : SHv(0),SHd(0),SHt(0),preSHv(0),PreSHd(0),PreSHt(0),TL1(0);
var : SLv(0),SLd(0),SLt(0),preSLv(0),PreSLd(0),PreSLt(0),TL2(0);
if date != date[1] Then{
SH = 0;
SL = 0;
}
if SwingHigh(1,H,Left,Right,Left+Right+1) != -1 Then{
SH = SH+1;
SHv = H[Right];
SHd = sdate[Right];
SHt = stime[Right];
PreSHv = SHv[1];
PreSHd = SHd[1];
PreSHt = SHt[1];
if SH >= 2 and CurrentDate == sdate Then{
TL1 = TL_New(PreSHd,PreSHt,PreSHv,SHd,SHt,SHv);
TL_SetExtRight(TL1,true);
TL_SetColor(TL1,RED);
}
}
if SwingLow(1,L,Left,Right,Left+Right+1) != -1 Then{
SL = SL+1;
SLv = L[Right];
SLd = sdate[Right];
SLt = stime[Right];
PreSLv = SLv[1];
PreSLd = SLd[1];
PreSLt = SLt[1];
if SL >= 2 and CurrentDate == sdate Then{
TL2 = TL_New(PreSLd,PreSLt,PreSLv,SLd,SLt,SLv);
TL_SetExtRight(TL2,true);
TL_SetColor(TL2,blue);
}
}
2018-05-18
211
글번호 119016
답변완료
문의드립니다.
안녕하세요.
1. 현재 출력되어 있는 차트의 전체봉에서 최고점 찍은 후
-10% 이상 하락하여 저점(HL) 을 찍은 후 상승하면
저점(HL)봉이 양봉이면 저점(HL)봉부터 거래량을 누적합산하고
저점(HL)봉이 음봉이면 다음봉부터 거래량을 누적합산하라.
(위조건을 만족하는 새로운 저점(HL)이 나올 때까지 계속 누적합산함)
2. 위 조건의
현재 출력되어 있는 차트의 전체봉에서 최고점 찍은 후 를
---> 최근 100봉의 최고점을 찍은 후 일 때로 바꾼 검색식도 부탁드립니다.
수고하세요.
2018-05-18
178
글번호 119015
답변완료
함수요청
안녕하세요?
함수요청드립니다.
직전 봉 종가(a) 대비 시가(b)가 1%이상 움직이면 (갭상승, 갭하락하면)
익봉 시가(c) 혹은 당봉 종가(d)에 진입하고자 합니다.
갭상승에 매수, 갭하락 매도
청산(익절, 손절 모두)은 발생된 갭(abs(a-b)) 만큼입니다.
2018-05-18
170
글번호 119014
답변완료
수식 부탁드립니다.
30분봉 기준 당일 첫 봉이 양봉이고
12시 30분 기준 당일 range position (종가 - 저가) / (고가 - 저가) x 100 >= 50 일때
현재가 매수 , 다음날 시가 청산
2018-05-18
170
글번호 119013
답변완료
부탁 드립니다.
도움 주심에 감사 드립니다.
57843번에서 답변 주신 식입니다.
이것의 종료 지점을 (2개 지점중 현재에서 가까운 지점)
금일 아침 개장하는 시간(07:00)으로 수정 변경
부탁 드리고자 합니다.
미리 경배로 감사 인사 올립니다.
input : n달전1(0),요일1(4),횟수1(4); //2개 지점중 현재에서 가까운 지점
input : n달전2(3),요일2(2),횟수2(3); //2개 지점중 현재에서 먼 지점
var : cnt(0),TL(0),cnt1(0),cnt2(0);
Array : D1[10,10](0),T1[10,10](0),C1[10,10](0),N1[10](0);
Array : D2[10,10](0),T2[10,10](0),C2[10,10](0),N2[10](0);
#영업일 기준 월변경
if bdate > bdate[1]+30 Then
{
N1[0] = 0;
N2[0] = 0;
for cnt1 = 1 to 9
{
N1[cnt1] = N1[cnt1-1][1];
N2[cnt1] = N2[cnt1-1][1];
for cnt2 = 1 to 9
{
D1[cnt2,cnt1] = D1[cnt2,cnt1-1][1];
T1[cnt2,cnt1] = T1[cnt2,cnt1-1][1];
C1[cnt2,cnt1] = C1[cnt2,cnt1-1][1];
D2[cnt2,cnt1] = D2[cnt2,cnt1-1][1];
T2[cnt2,cnt1] = T2[cnt2,cnt1-1][1];
C2[cnt2,cnt1] = C2[cnt2,cnt1-1][1];
}
}
#날짜/시간/종가 저장하는 배열들은 0으로 초기화
for cnt = 0 to 9
{
D1[cnt,0] = 0;
T1[cnt,0] = 0;
C1[cnt,0] = 0;
D2[cnt,0] = 0;
T2[cnt,0] = 0;
C2[cnt,0] = 0;
}
}
if bdate != bdate[1] and DayOfWeek(bdate) == 요일1 Then
{
N1[0] = N1[0]+1;
D1[N1[0],0] = sdate;
T1[N1[0],0] = stime;
C1[N1[0],0] = C;
if N1[n달전1] == 횟수1 and N2[n달전2] >= 횟수2 then
{
TL_Delete(TL);
TL = TL_new(D2[횟수2,n달전2],T2[횟수2,n달전2],C2[횟수2,n달전2],D1[횟수1,n달전1],T1[횟수1,n달전1],C1[횟수1,n달전1]);
}
}
if bdate != bdate[1] and DayOfWeek(bdate) == 요일2 Then
{
N2[0] = N2[0]+1;
D2[N2[0],0] = sdate;
T2[N2[0],0] = stime;
C2[N2[0],0] = C;
}
2018-05-18
176
글번호 119012
답변완료
"강조" 영역에서 SwingHigh 관련 질의
안녕하세요?
분석을 위해 "강조"영역에서 SwingHigh가 발생하는 봉들에 색을 칠하고자 합니다. 예를 들면 SwingHigh(1,H,3,3,7)에서 스윙고점으로 중심으로 스윙을 구성하는 7개봉에 색을 칠하는 것입니다. 관련 로직을 아래와 같이 만들었습니다. 돌려보니 스윙고점 1개만 색칠이 되는데 같은데 잘 못 된 부분 검토 수정 부탁드립니다. 감사합니다.
********************************************************************************
Input : Left(3), Right(3);
Var : i(0);
Array : RightBar[50](0);
If SwingHigh(1,H,Left,Right,Left+Right+1) != -1 then {
RightBar[0] = BarIndex;
For i = 1 to Left + Right {
RightBar[i] = RightBar[0] - i;
}
}
Else {
RightBar[0] = 0;
For i = 1 to Left + Right {
RightBar[i] = RightBar[0] - i;
}
}
For i = 0 to Left + Right {
If BarIndex == RightBar[i] And RightBar[i] > 0 Then PlotPaintBar(Close, Open, "Swing_Check", Cyan);
}
2018-05-18
180
글번호 119011
답변완료
지표문의
저기보이는 고점저점은 주봉의 고점 저점입니다.
목표는 대등수치를 활용하고 싶다입니다.
그림처럼 주봉최저가에서 최고가의 봉갯수와 이후 이어지는 현재 갯수가 위그림처럼 텍스트로 나타났으면합니다.(위는 15 분봉입니다.)
단, 만약 과거 256상태, 현재 15(최고가 봉포함 카운팅)상태인데 또신고가를 갱신한다면
과거: 300 현재:7 이런식으로 재갱신 됬으면합니다.
이후 최저가를 갱신한다면 현재의 값이 과거 : 로 가고 현재를 최저가 기준으로 카운팅 했으면합니다.(즉 반대상황이라면 이해하기 쉬울꺼 같습니다)
예)
최고가에서 최저가의 갯수 과거: 175, 현재:15(신고가를 재갱신할때까지)
2. 위수식을 년기준으로 한번더 부탁드리겠습니다.
2018-05-17
265
글번호 119009
답변완료
수식부탁드립니다
###,57837 답변수식에서 TL2 선을 과거전체를 표시하지않고 input에 n갯수적용된 만큼만
TL_SetExtRight로 표시 되게 하려면 식을 어찌 추가할지 도움 부탁드립니다.
$,언제나 늘 고맙습니다.
2018-05-17
188
글번호 119008