커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7470
글번호 230811
답변완료
부탁드립니다
미안합니다 *41364 문의번호
1. var1이 다음낮은봉 고가를따라가는선과,var2가 고가를따라가는선(첨부파일참조1)
(수식에서 변경요망)
2.대칭된 고점라인선에서+0.2피.+0.2피선
대칭된 저점라인선에서-0.2피,-0.2피선(첨부파일참조2)
2015-04-16
225
글번호 85117
답변완료
수식 부탁드립니다
1
macd 에서 골든 크로스나오면 매수신호
데드 나오면 매도신호
매수매도 진입후에 반대신호 나오면 자동스윗칭
청산목표는 50틱 자동
2
만약에 첫진입후 반대신호나와서 -청산됄때는 자동으로 처음 진입한 수량의 2배로 진입해서 목표수익은 역시 50틱자동청산
신호는 13시부터 나오게 해주시고 첫번째 진입익절시 매매종료,,만약손절돼서 두번째 반대로 2배수량진입시 50틱 익절이든 반대신호 나와서 손절이든 그날 매매종료 신호 안나오게 해주세요
너무복잡한가요,감사합니다........수식받아서 시스템식 한곳에 넣으면 돼나요
2015-04-16
199
글번호 85116
답변완료
검토 좀 해주세요!!!
아래의 수식에서 첨부 된 차트와 같이 부분적으로 진입과 청산이 다중으로 발생되는 부분이 있습니다. 검토 후 수정해 주시면 감사 하겠습니다.
아마도
# 주 시스템부분의
# Exits
IF LReaction == 0 Then
ExitLong("lx",atstop,LExit);
IF SReaction == 0 Then
ExitShort("sx",atstop,SExit); 부분과
# 보조 시스템 부분의
If MarketPosition == 0 Then {
If LRLs > upv Then Buy("b2");
If LRLs < dnv Then Sell("s2");
}
이 부분이 상호 충돌로 일어나는 현상인 듯 합니다.
# 1) 주 시스템부분
Inputs: ChanLen(14), Reaction(4), TCount(1), Setup(6);
Vars: HiChan(0), LoChan(0), LReaction(0), LReacHigh(0), LReacLow(0), SReaction(0),
SReacHigh(0), SReacLow(0), LThrust(0), SThrust(0), LEntry(0), LExit(0), SEntry(0), SExit(0),
NewLThrust(False), NewSThrust(False), LTR(False), STR(False);
# Assignment of values for the High/Low Channel
HiChan = Highest(High, ChanLen)[1];
LoChan = Lowest(Low, ChanLen)[1];
# Reversal Breakout - Initial Setup
IF MarketPosition <> 1 Then {
IF High > HiChan Then {
LReaction = 1;
LReacHigh = High;
LReacLow = Low;
LExit = LReacLow;
LThrust = 0;
SReaction = 0;
}
}
Else {
LReaction = 0;
LThrust = 0;
}
# Reversal Breakout - Initial Setup
IF MarketPosition <> -1 Then {
IF Low < LoChan Then {
SReaction = 1;
SReacHigh = High;
SReacLow = Low;
SExit = SReacLow;
SThrust = 0;
LReaction = 0;
}
}
Else {
SReaction = 0;
LThrust = 0;
}
# Upward Trend Resumption
IF LReaction >= 1 Then {
IF Low < LExit Then {
LExit = Low;
LThrust = 0;
}
IF High < LReacHigh AND Low < LReacLow Then {
LReaction = LReaction + 1;
LReacHigh = High;
LReacLow = Low;
NewLThrust = True;
}
}
# Downward Trend Resumption
IF SReaction >= 1 Then {
IF High > SExit Then {
SExit = High;
SThrust = 0;
}
IF Low > SReacLow AND High > SReacHigh Then {
SReaction = SReaction + 1;
SReacLow = Low;
SReacHigh = High;
NewSThrust = True;
}
}
# Bullish Thrust Day accumulation
IF LReaction >= Reaction AND Close > High[1] Then
LThrust = LThrust + 1;
# Bearish Thrust Day accumulation
IF SReaction >= Reaction AND Close < Low[1] Then
SThrust = SThrust + 1;
# Thrust Count Completion
LTR = LThrust == TCount AND NewLThrust;
STR = SThrust == TCount AND NewSThrust;
# Entry Price Setup
IF LTR Then {
LEntry = High + 0.1 ;
NewLThrust = False;
}
IF STR Then {
SEntry = Low - 0.1 ;
NewSThrust = False;
}
# Entries
IF MRO(LTR, Setup, 1) <> -1 Then
Buy("b1",atstop,LEntry);
IF MRO(STR, Setup, 1) <> -1 /*AND SReaction >= Reaction */Then
Sell("s1",atstop,SEntry);
# Exits
IF LReaction == 0 Then
ExitLong("lx",atstop,LExit);
IF SReaction == 0 Then
ExitShort("sx",atstop,SExit);
# 2) 보조 시스템 부분
Input : LRLP(9),sig(5);
input : A(3),MU(2);
var : LRLv(0),LRLs(0),UPv(0),dnv(0),Ov(0);
LRLv = LRL(C,LRLP);
LRLs = ema(LRLv,sig);
Ov = (DayOpen(2)+DayOpen(1)+ DayOpen(0))/3; #3일간시가평균
if dayindex == 0 Then{
upv = Ov+atr(A)*MU;
dnv = Ov-atr(A)*MU;
}
if dayindex > 0 Then
{
if CrossUp(LRLs,upv) Then
{
upv = upv[1]+atr(A)*MU;
dnv = upv[1];
}
if CrossDown(LRLs,dnv) Then
{
upv = dnv[1];
dnv = dnv[1]-atr(A)*MU;
}
}
If MarketPosition == 0 Then {
If LRLs > upv Then Buy("b2");
If LRLs < dnv Then Sell("s2");
}
# 선물 만기청산
var: month(0),nday(0),week(0);
month = int(date/100)-int(date/10000)*100;
nday = date - int(date/100)*100;
week = DayOfWeek(date);
if month%3 == 0 and nday >= 8 and nday <= 14 and week == 4 then
SetStopEndofday(144000);
Else
SetStopEndofday(0);
2015-04-16
303
글번호 85114
답변완료
간단한 수식 문의드립니다.
수고많으십니다.
dayopen 은 매일의 시가를 표현하는 수식인데..
매주의 첫 거래일 시가를 한주동안 표현하는 방식을 알고 싶습니다.
즉 월요일이 쉬지 않는 다면 월요일 아침 시가를 금요일까지 표시하고
다음주 월요일에 새로운 시가가 생기는식으로 작성하려고 합니다.
다만 월요일이 휴장이라면 화요일 시가로 금요일까지 표시 되어야겠지요..
부탁드립니다.
2015-04-16
168
글번호 85113
답변완료
누적
참조항목으로 data2와 data3를 설정하고
data2는 3월,6월,9월,12월의 동시만기일 이후부터 다음 동시만기일까지 누적하고 data3는 매월 만기일 익일부터 다음월 만기까지 누적하는 지표 부탁드립니다.
2015-04-16
212
글번호 85108
답변완료
현재가가 상한가이면 종가청산을 해제
현재가가 상한가이면 SetStopEndofday(144900); 를 취소하고
아니면 다시 SetStopEndofday(144900); 을 셋팅하는 구문을 알려주세요~
현재가가 상한가라는걸 불러오는 함수같은게 있는지요~
2015-04-16
188
글번호 85107
답변완료
종목검색식 부탁드립니다.
보람된 한주일 보내고 계시지요~~
검색식 문의입니다.
다소 애매해서 차트를 첨부하였습니다.
1.n봉내 80bbup이 240bbup을 상향크로스하였고
2.n봉내 주가가 240bbup을 상향크로스하였고
3.1과 이조건이 만족한이후에 주가가 80bbup을 이탈하고
이후 240bbup을 지지(지지상하폭은 위아래 2%)하는 종목 검색식 부탁드립니다.
첨부해드림 차트의 네모박스부분이 제가 검색하고자하는시점입니다.
그리고 검색결과를 텍스트파일로 출력이 가능한지요..가능하면수식부탁드립니다.
감사합니다
그리고 혹시 검색식이 실행되는 순서의 기준이 무엇인지 알고 싶습니다
장기이평을 검색할때 시간이 너무 오래 소요되네요~
2015-04-16
184
글번호 85106
답변완료
주식 종목별 기관,외국인,개인 매수금액 데이터를 차트에 표시 가능한가요?
주식 종목별 데이터의 경우,
가격, 거래량, 업틱, 다운틱 등의 데이터는 활용이 가능한데,
매매주체별 거래량 또는 거래금액 데이터는
예스랭기지로 다룰 수가 없나요?
예스 스팟에서는 주식종목별 거래금액 데이터를 활용할 수 있는 것으로 아는데요.
2015-04-16
220
글번호 85105
답변완료
당일종가청산
실제 매매에서는 당일 종가청산이 불가한 것은 알고 있으나, 시뮬레이션을 위해서 당일 마지막 봉 종가에 청산신호를 내고 싶습니다. 가능하다면 어떻게 해야 하나요?
2015-04-16
181
글번호 85102