커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4325
글번호 230811
답변완료
경우의수
* 많은 도움에 항상 고맙습니다.
* 시스템에서 and DayVolume > DayVolume(1)*0.6 이문장을 쓰는데 경우의수를 구합니다.
if c > DayClose(1) and DayVolume > DayVolume(1) then buy(); 일경우
if c > DayClose(1) and 전일 거래량이 20만주보다 작으면 * 0.8
and 전일 거래량이 20만주보다 크면 * 0.5 then buy();
여기서 한글부분은 어떻게 명령어를 작성 하나요?
즉 전일 거래량이 20만주 보다 작으면 전일대비 80% 이상 거래량이 크면 매수
전일 거래량이 20만주 보다 크면 전일대비 50% 이상 거래량이 크면 매수
입니다.
* 고맙 습니다...
2017-11-26
108
글번호 114501
답변완료
수식 부탁드립니다
1.
daylow 에서 7번째 양 캔들 고가가 양 캔들 고가 중 가장 고가일 때
daylow 에서 5번째 양 캔들 시가 표시
daylow 에서 7번째 양 캔들 고가와 daylow 상방 대칭 표시
daylow 에서 7번째 양 캔들 고가와 daylow 하방 대칭 표시
daylow 에서 7번째 양 캔들 고가가 양 캔들 고가 중 가장 고가가 아닐 경우
daylow 에서 7번째 양 캔들 시가 표시
daylow 에서 7번째 양 캔들 진행과정 형성된 최고가와 daylow 상방대칭 표시
daylow 에서 7번째 양 캔들 진행과정 형성된 최고가와 daylow 하방대칭 표시
dayhigh 에서 7번째 음 캔들 저가가 음 캔들 저가 중 가장 저가일 때
dayhigh 에서 5번째 음 캔들 시가 표시
dayhigh 에서 7번째 음 캔들 저가와 dayhigh 상방 대칭 표시
dayhigh 에서 7번째 음 캔들 저가와 dayhigh 하방 대칭 표시
dayhigh 에서 7번째 음 캔들 저가가 음 캔들 저가 중 가장 저가가 아닐 경우
dayhigh 에서 7번째 음 캔들 시가 표시
dayhigh 에서 7번째 음 캔들 진행과정 형성된 최저가와 dayhigh 상방대칭 표시
dayhigh 에서 7번째 음 캔들 진행과정 형성된 최저가와 dayhigh 하방대칭 표시
2.
금일 시가<D-5일 시가일 경우 D-5일 시가에 매도
금일 시가>D-5일 시가일 경우 D-5일 시가에 매수
3.
금일 시가<D-5일 시가일 경우 D-5일 시가에 매도..익절 20틱,손절 10틱
금일 시가>D-5일 시가일 경우 D-5일 시가에 매수..익절 20틱,손절 10틱
감사합니다
2017-11-28
133
글번호 114500
2wnwn 님에 의해서 삭제되었습니다.
2017-11-26
11
글번호 114499
여유로운투자 님에 의해서 삭제되었습니다.
2017-11-26
4
글번호 114498
여유로운투자 님에 의해서 삭제되었습니다.
2017-11-26
3
글번호 114497
답변완료
지표설정 요청드립니다.
안녕하세요
매번 감사드립니다.
요청드릴 사항은 첨부된 파일과 같이 설정하고자 하는데 잘 안되네요
설정방법 부탁드립니다
감사합니다
2017-11-26
247
글번호 114496
답변완료
수식 부탁합니다
스토캐스틱(25,6,6) 골든크로스를 검색하는데
현재봉 기준 21봉전 ~ 50봉전 사이에 발생한 골든크로스 종목 검색식 부탁합니다.
즉 현재봉 기준 20봉 사이에는 골든크로스가 없고 21봉 부터 50봉 전 사이에
골든크로스가 발생한 수식 부탁합니다
2017-11-25
158
글번호 114495
답변완료
수식부탁드립니다.
아래의 거래시간 내 매수한번 매도한번 진입 하는식을
첫번째 청산에서 수익이면 개래 종료, 손실이면 두번째 진입
하는식으로 수정 부탁드립니다
감사합니다
input : short(12),long(26),sig(9),P1(3),P2(30),P3(100);
input : af(0.02),maxaf(0.2);
input : 최고익절1(70), 최고대비하락1(40), 최고익절2(80),최고익절3(180),최고대비퍼센트(0.20), 손절(50);
input : 시작시간(105500), 종료시간(142000);
input : 진입회수(1);
var : mav1(0),mav2(0),mav3(0);
var : Tcond(False),Bcount(0),Scount(0);
var : MACDO2(0), MACDO1(0);
var : BH(0), SL(0);
var : para(0);
mav1 = ma(c,P1);
mav2 = ma(c,P2);
mav3 = ma(c,P3);
para = sar(af,maxaf);
if stime == 시작시간 or (stime >시작시간 and stime[1] < 시작시간) Then{
Tcond = true;
Bcount = 0;
Scount = 0;
}
if stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간) Then{
Tcond = false;
}
//진입회수
if MarketPosition != MarketPosition[1] and MarketPosition == 1 Then
Bcount = Bcount+1;
if MarketPosition != MarketPosition[1] and MarketPosition == -1 Then
Scount = Scount+1;
//진입
if Tcond == true Then{
if Bcount < 진입회수 and crossup(mav2,mav3) Then buy("Buy");
if Scount < 진입회수 and CrossDown(mav2,mav3) Then sell("Sell");
}
//청산2
if MarketPosition == 1 Then{
BH = highest(H,BarsSinceEntry);
if BH >= EntryPrice+PriceScale*최고익절1 and BH < EntryPrice+PriceScale*최고익절2 Then{
ExitLong("B익절1",AtStop,BH-PriceScale*최고대비하락1);
}
if BH >= EntryPrice+PriceScale*최고익절2 and CrossDown(C,para) Then{
ExitLong("B익절Pa");
}
if BH >= EntryPrice+PriceScale*최고익절3 then{
ExitLong("B익절%",AtStop,BH-(BH-EntryPrice)*최고대비퍼센트);
}
ExitLong("B손절",AtStop,EntryPrice-PriceScale*손절);
}
if MarketPosition == -1 Then{
SL = Lowest(L,BarsSinceEntry);
if SL <= EntryPrice-PriceScale*최고익절1 and SL > EntryPrice-PriceScale*최고익절2 Then{
ExitShort("S익절1",AtStop,SL+PriceScale*최고대비하락1);
}
if SL <= EntryPrice-PriceScale*최고익절2 and CrossUp(C,para) Then{
ExitShort("S익절Pa");
}
if SL <= EntryPrice-PriceScale*최고익절3 then{
ExitShort("S익절%",AtStop,SL+(EntryPrice-SL)*최고대비퍼센트);
}
ExitShort("S손절",AtStop,EntryPrice+PriceScale*손절);
}
if 종료시간 <= sTime or sTime < 시작시간 then {
if MarketPosition == 1 then{
ExitLong("B장종료");
}
if MarketPosition == -1 then{
ExitShort("S장종료");
}
}
2017-11-25
161
글번호 114494
답변완료
행복;지표식 작성 바랍니다
한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다
지표식 관련입니다
Q&A 55570에 대하여 보내주신 답변 잘 받았습니다
그 답변을 사용하려고 하였으나 제대로 하지 못하여 다시 질문 드립니다
<< 아래 1 >>은 지표식 입니다
- 주가가 20일선을 상향돌파 되었다가 하향돌파 될 때까지
- 돌파된 날의 종가를 지표를 그리는 것입니다
- 지표가 차트에 적용된 모양은 첨부파일로 올립니다
=================<< 아래 1 >>=================================
Var : 돌파가격(0), 수량(0);
If CrossUp(C, Ma(C, 20)) Then{
돌파가격 = C;
수량 = 1000000 / 돌파가격;
Condition1 = True;
}
If CrossDown(C, Ma(C, 20)) Then{
Condition1 = False;
}
Value1 = 돌파가격;
If Condition1 == True Then
Plot1(Value1);
=======================================================
왼쪽부터 점선으로 된 지표가 3개 있습니다
- 7월에 발생된 첫번째 지표가 시작되는 맨 왼쪽의 위,아래,오른쪽,왼쪽 어디엔가 지표식에 있는 수량( 1000000 / 돌파가격 )이 자동으로 계산되어 표시되도록 하고 ( 돌파가격 = 66,200 )
- 8월에 발생된 두번째 지표가 시작되는 맨 왼쪽의 위,아래,오른쪽,왼쪽 어디엔가 지표식에 있는 수량( 1000000 / 돌파가격 )이 자동으로 계산되어 표시되도록 하고 ( 돌파가격 = 68,500 )
- 11월에 발생된 세번째 지표가 시작되는 맨 왼쪽의 위,아래,오른쪽,왼쪽 어디엔가 지표식에 있는 수량( 1000000 / 돌파가격 )이 자동으로 계산되어 표시되도록 하고자 합니다 ( 돌파가격 = 73,500 )
수식 작성 바랍니다
수고하십시요^^
2017-11-25
229
글번호 114493