커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6133
글번호 230811
답변완료
수식문의드립니다
안녕하세요
설 잘 보내셨나요?
연휴기간동안 질문 몇개 생겨 문의드립니다
1. 진입해 청산시 거래종료
Hstate, Lstate를 정의해 true 일때만 거래하도록 하고,
청산조건이 되면 false로 바꿔 거래가 안되게 하려고 아래와같이 만들었습니다
input : HB(14570), LB(14550) ;
var : Hstate(true), Lstate(true), e60(0);
e60 = Ema(C,5);
if CrossUp(C, HB) and Hstate == true Then Buy() ;
if CrossDown(C, LB) and Lstate == true Then Sell() ;
if CrossDown(C, e60) Then Begin
ExitLong();
Hstate == false ;
End;
if CrossUp(C, e60) Then Begin
ExitShort();
Lstate == false ;
End;
하지만 실제 테스트시 청산해도 Hstate, Lstate가 항상 true이고 false로 바뀌지 않습니다
어떻게 하면 의도한대로 작동할 수 있게 할지 확인 부탁드리겠습니다
2. 소수점을 버림하려면
찾아보니 예스랭귀지엔 반올림함수인 round밖에 안보입니다
rounddown함수는 없는지
없다면 버림하려면 어떻게 해야하는지 문의드립니다
감사합니다
2022-02-02
966
글번호 155947
2wnwn 님에 의해서 삭제되었습니다.
2022-02-01
15
글번호 155946
답변완료
문의
var : x(0,Data1),y(0,Data1),z(0,Data1);
x = data2(v)+data3(v)+data4(v)+data5(v)+data6(v) ; # 연결풋+2,연결풋+1,연결풋0,연결풋-1,연결풋-2
y = data7(v)+data8(v)+data9(v)+data10(v)+data11(v) ; # 연결콜+2,연결콜+1,연결콜0,연결콜-1,연결콜-2
z = x/y*100;
연결 옵션으로 put-call ratio인 z를 만들어서
진입을 하고자 합니다.
1) "당일" 발생봉으로 한다는 내용 추가
2) "당일" 누적거래량 적용한 수식이 맞는지 확인
항상 고맙습니다.
2022-02-03
1071
글번호 155945
답변완료
조건 만족 이후 매매 금지
안녕하세요,
조건을 만족하는 경우가 발생하면, 발생 시점 이후 매매를 금지시키고 싶습니다.
예를 들면,
참조지표(Data2)에서 5이평선이 20이평선을 데드크로스 한 경우, 혹은 차트 내 "A"라는 청산신호가 발생했을 경우, 해당 시점 이후 매수 진입 금지
매번 도움 많이 받고 있습니다.
감사합니다.
2022-02-01
1294
글번호 155944
답변완료
문의드립니다
분봉 차트 상에서
종목의 일일 등락률(전일 종가와 오늘의 종가로 계산되는)의
평균과 표준편차를 표현하고자 합니다.
ma(일일 등락률,20);
std(일일 등락률,20);
말하자면 이렇게 수식을 이용하고자 할때 분봉차트 상에서 일일등락률에 해당되는 부분을 어떻게 표현할지 문의 드립니다.
항상 감사드립니다.
2022-01-31
1414
글번호 155943
답변완료
옵션 매도 진입 및 청산 함수를 알려주세요
옵션 풋매도 가격이
만약 0.35이면
진입하는 함수를
어떻게 구현 해야 되나요?
2022-01-31
1418
글번호 155942
답변완료
수식변경
늘 감사합니다.
아래의 수식은 data2만 있는데 이 수식에
data3부터 data11 까지 수식을 추가해 주세요.
즉, 3번부터 11번 까지 추가입니다.
지금도 잘 쓰고 있습니다.
거듭 감사합니다.
var : month(0,data2),nday(0,data2),week(0,data2),X(false,data2),T(0,data2);
var : D1(0,data2),L1(0,data2),MH(0,data2),ML(0,data2);
month = data2(int(date/100)-int(date/10000)*100);
nday = data2(date - int(date/100)*100);
week = data2(DayOfWeek(date));
if nday >= 8 and nday <= 14 and week == 4 then
X = true;
Else
X = false;
if data2(bdate != bdate[1] and X == false and X[1] == true) Then
{
D1 = data2(sdate);
MH = data2(H);
ML = data2(L);
}
if D1 > 0 then
{
if data2(Sdate == D1) Then
L1 = data2(lowD(0));
if data2(H) > MH Then
MH = data2(H);
if data2(L) < ML Then
ML = data2(L);
plot1(L1);
plot2(MH, "2고");
plot3(ML, "2저");
}
2022-01-31
1168
글번호 155941
답변완료
선부탁 드립니다.
* 항상 많은 도움에 고맙습니다.
* 아래 기준 수평선 요청 드립니다.
1. 당일 시작봉을 기준 으로 시작 하여
2. 1 ~ 100봉 까지 최고가와 최저가 수평선
101 ~ 200봉 까지 최고가 수평선 한줄 최저가 수평선 한줄
201 ~ 300봉 까지 최고가 수평선 한줄 최저가 수평선 한줄
계속 100봉단위로 수평선 표시
* 고맙습니다. 수고하십시요
2022-01-31
1063
글번호 155940
답변완료
나스닥100 선물 60분봉으로 아래와 같이 했는데 수식이 반영이 안되서요
나스닥100 선물 60분봉으로 아래와 같이 했는데 수식이 반영이 안되서요
무슨 오류인지 알려주시면 감사하겠습니다.
# 100분봉이내에서 최고점에서 -5% 이하로 떨어질때 조건이 반영되려고 하는것인데
Y를 변수로 하였는데 모든 변수가 같은 값이 나옴니다.( 결국 해당 조건이 반영이 안되는 것으로 결과가 나옴니다.)
무슨 오류가 있는건가요?
input : MFI기간(25),MFI값(20),추가매수하락퍼센트(3),급락매수하락퍼센트(7);
input : MFI청산기간(8),MFI청산값(82);
input : 청산요일(5);
input : 추가매수횟수(4),X(100),Y(-5); #X는 적용봉수 Y는 적용봉수 내에 최고점에서 하락폭(%)
var : MoneyFlow(0),MoneyFlow1(0);
MoneyFlow = MFI(MFI기간);
MoneyFlow1 = MFI(MFI청산기간);
if MarketPosition == 0 and MoneyFlow <= MFI값 and C <= Highest(H,X)+(1+Y/100) Then
Buy("b",OnClose,DEf,1);
if MarketPosition == 1 and MaxEntries < 추가매수횟수 Then
Buy("-3% 하락추가매수",AtLimit,LatestEntryPrice(0)*(1-추가매수하락퍼센트/100));
if MarketPosition == 1 Then
Buy("-7%하락 추가매수",AtLimit,LatestEntryPrice(0)*(1-급락매수하락퍼센트/100));
if MarketPosition == 1 and MoneyFlow1 > MFI청산값 Then
ExitLong("MFI청산",atlimit,AvgEntryPrice*1.003);
2022-01-31
1327
글번호 155939