커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

검색식 문의 드립니다.

안녕하세요~ 어떤 종목에서 역사상 최고 거래량이 터진날의 봉의 최고가와 지수이평60일의 평균값(최고가+지수이평60의 값/2)을 구하고 그 평균값을 오늘 돌파하는 종목을 검색하는 방법이 있을까요?
프로필 이미지
vbnmzx
2021-11-10
1388
글번호 153508
종목검색
답변완료

문의드립니다.

안녕하세요. var : HC(0),HCO(0),LL(0),HCT(0),HH(0),HHT(0); if Bdate != Bdate[1] Then { HC = 0; HCT = 0; HH = 0; HHT = 0; LL = 0; } Else { if HC == 0 or (HC > 0 and C > HC) Then # 당일최고양봉은 +2% 이상 양봉 { HC = C; HCO = O; HCT = sTime; } if HH == 0 or (HH > 0 and H > HH) Then { HH = H; HHT = sTime; Condition1 = False; } if LL == 0 or (LL > 0 and L < LL) Then LL = L; if HH > 0 and LL > 0 and C < (HH+LL)/2 Then Condition1 = true; if HCT >= 100000 and HCT <= 130000 and #당일양봉최고가는 10시~13시 사이 HC >= HCO*1.02 and #당일양봉최고가는 2%이상 양봉 HC >= DayClose(1)*1.07 and #당일양봉최고가는 전일종가대비 7%이상 HHT >= HCT and #당일최고가는 당일양봉최고가발생이후 Condition1 == true Then #당일최고가이후 당일중심값이하루 종가가 내려온적이 있음 Find(1); } 위 조건 만족한 적이 있는 모든 종목을 검색하라는 수식입니다. 마지막에 있는 수식을 HHT >= HCT Then Condition1 = true; if Condition1 == true Then Find(1); } 이렇게 하면 안되는 이유를 설명 부탁드립니다.
프로필 이미지
land22
2021-11-10
986
글번호 153501
종목검색
답변완료

수식 부탁드립니다.

안녕하세요? 매번 수고에 감사드립니다. 아래의 예스 이동평균선의 값이 키움증권 이동평균선의 값이 다른 이유는 방식이 달라서 그런 이유인것 같은데 키움 증권방식으로 이동평균선 지표를 구현하고자 합니다. 부탁드립니다. 감사합니다. Input : Period1(5), Period2(10); var : Sma1(0),Sma2(0); Sma1 = ma(C,Period1); Sma2 = ma(C,Period2); Plot1(Sma1, "이동평균1"); Plot2(Sma2, "이동평균2");
프로필 이미지
천년대로
2021-11-09
843
글번호 153497
지표
답변완료

setstoploss 함수 문의

수고많으십니다. 시스템에서 setstoploss(0.3,percentstop); 함수를 적용하여 사용하고 있습니다. 30분봉을 사용하고 있는데요 만일 하루에 1회 스탑로스가 될 경우 거래정지하고 싶습니다. 이를 구현하기위한 시스템식을 부탁드립니다. 미리 감사드리도요 꾸뻑....
프로필 이미지
phoebus
2021-11-09
966
글번호 153496
시스템
답변완료

문의 드립니다. 참조데이타 일보정

수고하십니다. 참조데이타 DATA2,DATA5,DATA15 의 당일 데이타값으로 30개 이평값을 구하고 싶습니다.
프로필 이미지
구름달
2021-11-09
790
글번호 153487
시스템
답변완료

시스템식 문의 드립니다.

제가 아래의 시스템식을 작성하였는데, 오류가 많이 나서 어디가 잘못되었는지 확인좀 부탁드리겠습니다. ---------------------------------------------------------------------------------- input : 고점(7000),저점(2000); input : 투자금액(10000000); var : entry(False),786매수(0),618매수(0),5매수(0),382손절(0),1타점익절(0),2타점익절(0); 786매수 = 저점+((고점-저점)*0.786; 618매수 = 저점+((고점-저점)*0.618; 5매수 = 저점+((고점-저점)*0.5; 382손절 = 저점+((고점-저점)*382; 1타점익절 = 618매수+((786매수-618매수)*0.66; 2타점익절 = 5매수+((618매수-5매수)*0.66; if Bdate != Bdate[1] Then entry = true; if TotalTrades > TotalTrades[1] Then entry = False; if MarketPosition == 0 and entry == true Then { Buy("618매수",AtLimit,618매수,Floor(투자금액))); } if (MarketPosition == 1 and MaxEntries == 1 and IsEntryName("618매수") == true Then { Buy("5매수",AtLimit,5매수,Floor(투자금액))); } if MarketPosition == 1 Then { if MaxEntries == 1 Then { ExitLong("1타점익절",AtLimit,1타점익절); } if MaxEntries == 2 Then { ExitLong("2타점익절",AtLimit,2타점익절); } ExitLong("382손절",AtStop,382손절); ----------------------------------------------------------------------------------
프로필 이미지
맴맴잉
2021-11-09
631
글번호 153468
시스템

바나 님에 의해서 삭제되었습니다.

프로필 이미지
바나
2021-11-09
5
글번호 153467
시스템
답변완료

목표수익 후 반대 신호만 진입

input : Period1(5), Period2(50) var1 = ema(C,Period1); var2 = ema(C,Period2); if var1>var2 then buy(); if var1<var2 then sell(); crossup, crossdown 을 사용치 않고 위와 같이 작성했을 때 목표수익 후 다른 신호에 진입토록 수식 부탁합니다. (매수로 목표수익 달성시 매도 신호에만 진입)
프로필 이미지
호테
2021-11-09
740
글번호 153465
시스템
답변완료

문의드립니다

if NextBarSdate <> sDate and DayOfWeek(Bdate) == 5 Then { Var1 = weekHigh(0); Var2 = weekLow(0); } Else { Var1 = weekHigh(1); Var2 = weekLow(1); } if MarketPosition == 0 Then { Buy("매수", AtStop , A); } if MarketPosition == 1 Then Buy("애드업", AtStop , B ); //피라미딩 if MarketPosition == 1 and CurrentEntries == 2 and sDate == EntryDate(0) Then 목표가 = var1 + N ; //피라미딩까지 진입후에는 목표가를 정함 #청산식 if MarketPosition == 1 and CurrentEntries == 2 Then ExitLong("수익실현", AtLimit,목표가); A< B < var1 + N 인 임의의 가격을 가정하고 이렇게 식을 진행했을때 피라미딩 애드업을 한 이후에 1. 다음봉에서 바로 청산되는 오류가 생깁니다. 2. 다음봉에서 바로 청산되지 않을 경우 원래 의도는 피라미딩 진입한 날의 기준으로 직전 주봉의 고가 + N 이 목표가인데 실제 청산은 피라미딩 진입한 날의 기준 그 주의 주봉 고가 + N 에서 청산되는 오류가 생기는 것같습니다. 케이스를 보아하니 청산된 직전거래의 가격보다 이번거래의 가격이 높을때 1번 오류가 생기는 것 같은데 2가지 오류가 어떻게 생기는 건지 잘 이해가 안되고 있습니다. 수식에 어떤 오류가 있는건지 도움 부탁드립니다. 항상 감사합니다.
프로필 이미지
시고르시고르
2021-11-09
863
글번호 153464
시스템