커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7652
글번호 230811
답변완료
시가총액
시가 총액이 얼마 이상 얼마 이하 이런것도 조건검색이 가능할런지요?
예를들면 시가총액이 6조 이상인 것을 찾아라..등등..
Pbr, per 자산증가율 자본증가율 이런것들도 검색이 가능한가요?
가능하다면 검색식이 어떻게되는지요?
2012-05-29
375
글번호 51383
답변완료
수정부탁드립니다.
input : 투입금액(10000000),추가하락(7),수익(7), 추가매수(10);
var : entry(0);
if CodeCategory == 1 Then{ #코스피
if BasePrice < 50000 Then
entry = int(int(투입금액/C)/10)*10;
Else
entry = int(투입금액/C);
}
if CodeCategory == 2 Then#코스닥
entry = int(투입금액/C);
if date != date[1] Then
value1 = value1+1;
var1 = EnvelopeDown(20,20);
if MarketPosition == 0 and CrossDown(L,Var1) Then
var2=Var1;
if Var2*(1-추가하락/100)>=C Then
Buy("B1",AtLimit,Var2*(1-추가매수/100),0.3*entry);
var3=EntryPrice;
if CurrentEntries == 1 and MaxEntries == 1 Then
if Var3*(1-추가하락/100)>=C Then
Buy("B2",AtLimit,Var3*(1-추가매수/100),0.3*entry);
var4=EntryPrice;
if CurrentEntries == 2 and MaxEntries == 2 Then
if Var4*(1-추가하락/100)>=C Then
Buy("B3",AtLimit,Var4*(1-추가매수/100),0.4*entry);
if MarketPosition == 1 Then{
exitlong("Ex1",AtLimit,AvgEntryPrice*(1+수익/100));
// if value1 == value1[BarsSinceEntry]+10 Then
// exitlong();
}
수고가 많으십니다.
엔벨로프 하단선에 터치하면 그 가격을 기억해두었다가
그 가격보다 10%하락하면 매수1
매수1보다 10%더 하락하면 매수2
매수2보다 10%더 하락하면 매수3
평균 매수가보다 7% 상승하면 매도
하려는 식을 만드는데 매수가 원하는 위치에서 이루어지질 않네요
수정좀 부탁드립니다. 어디가 잘못됐는지 ㅠㅠ
2012-05-29
325
글번호 51382
답변완료
문의 드립니다.
일봉 또는 주봉매매를 시스템으로 할 경우
매수가격을 AtStop으로 지정하였다고 가정할때
일봉의 경우에는 다음날 9시
주봉의 경우에는 다음주 월요일 9시에만 매수가 되는건지 궁금합니다.
일봉의 경우 지정된 매수가가 되면 장중이라도 매수가 되었으면 하며
주봉도 동일하게 다음주 월~금요일 사이에 해당되는 매수가에 매수가 되었으면 하는데
시뮬레이션을 돌려보면 주봉의 경우 월요일에만 매수가 되는거로 표시가 되고 있습니다.
시뮬레이션이라서 그런건지 실제 운용시에도 그런건지 궁금합니다.
청산도 동일하게 AtLimit과 AtStop을 사용하고 있는데
해당 로직도 청산가에 도달시에 바로 매수청산 신호가 발생되는건지 궁금합니다.
감사합니다.
2012-05-28
306
글번호 51381
답변완료
시스템식 부탁드리겠습니다.
일봉에서 주봉의 ADX를 활용한 시스템식 부탁드리겠습니다.
data2를 활용하지 않고 실시간으로 참조 할 수 있게 부탁드려요
매수
주봉의
DIPLUS(5) > DIMINUS(5)
and ADX(5) > ADX(5)[1]
and ADX(5) >= 20 then
Buy();
매수청산
DIPLUS(5) < DIMINUS(5) then
ExitLong();
감사합니다.
2012-05-28
329
글번호 51380
답변완료
수식 문의합니다.
[일]봉주기 매매를 하려 합니다.
조건1. 매수 매도 시점에 [주]봉주기 MACD오실레이터의 abs[절대값]이 직전값보다 작아야 한다.
{ 예 : 직전값 현재값
20 10 (True)
20 30 (False)
-20 -10 (True)
-20 -30 (False) }
주중에 주봉상 MACD값이 미완성이라도 주봉차트에서 보여지는 현재값을 이용하고 싶습니다.
조건2. 손익곡선에 채널을 그려 넣는데, 이 채널은 직전 30번의 매매 기간 동안
손익곡선의 최저점을 추적한다. (첨부그림 참조)
누적손익곡선이 최저점을 추적한 값 이상에서만 매매한다.
(시스템상 Plot명령을 실행할 수 없는건 알고있습니다.
시스템상 구현여부가 중요합니다.)
시스템식 :
if 조건1 and 조건2 then {
if crossup(ma(c,5),ma(c,20))
then buy();
if crossdown(ma(c,5),ma(c,20))
then sell();
}
감사합니다.
2012-05-28
412
글번호 51379
회원 님에 의해서 삭제되었습니다.
2012-05-28
63
글번호 51378
답변완료
검색 및 강조
분봉의 몸통 abs(시가-종가) 보다 윗꼬리가 길면 그 봉 위에 점으로 표시하거아 강조하고 싶습니다. 그래서 조건식을 만들어 조건이 충족되는 봉 위에 점을 찍으니, 조건이 충족되지 않는 봉에는 ㅇ에 점이 찍혀서 그래프가 그야말로 눈꼼만하게 그려지니 볼 수가 없습니다. 조건이 충족되지 아니하는 봉에는 표시가 나오지 않게 하거나, 다른 좋은 방법이 있는지요?
매뉴얼에는 기껏해야 plot 함수 몇줄 설명밖에 없어서 도무지 응용을 할 수가 없습니다. 위 해당 내용을 참조하여 검색식 및 강조식(해당 봉의 색을 변하게 하나요?)을 부탁 드립니다.
참고로 매뉴얼에 검색식과 강조식을 사용하여 그림에 표시하는 예라도 있으면 쉽게 파악할 수 있을 것 같습니다. 매뉴얼에 이와 관련하여 나온 것은 120p에
Plot1(출력대상, "이름", 색상, def, 굵기)
라고 되어 있고 검색식은 점그래프라고 설명된 것이 전부입니다.
여기서 DEF로 표시된 네번째 매개변수는 무엇인지요? 그리고 어떤 식으로 점그래프가 차트에 표시되어지는지에 대한 예시가 없습니다.
2012-05-28
355
글번호 51377
답변완료
2진입 시스템식 문의
매수조건
2분 선물챠트
종가가 MACD Osacillator (단기 30, 장기 1000, 신호 18) 와
Parabolic SAR(0.06, 0.06) 을 상향돌파시 매수.
청산조건
Parabolic SAR(0.06, 0.06) 을 하향돌파시 매수청산.
매도조건은 반대겠지요.
청산후 다시 조건 충족시 재차 진입.
당일 3시종가에 모든 포지션 청산
이런걸 시스템식으로 만들 수 있나요? 부탁드립니다.
2012-05-28
306
글번호 51376
답변완료
macd 시그널 값 구하는 법
var1 = MACD(12, 26);
var2 = Ma(MACD(12, 26), 9);
var3 = ((var1 - var2) / var2) * 100;
if (var3 < 1) and (var3 > 0) then find(var2);
macd와 시그널 값을 구해서
위처럼 종목검색을 했습니다.
그런데 검색된 종목들의 챠트상에 표시된 macd시그널 값과
종목검색리스트의 결과값(var2)에 차이가 있던데
제가 뭘 잘못한건지요?
2012-05-28
381
글번호 51375