커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7494
글번호 230811
답변완료
부탁합니다
문의 번호;37830 수식이 잘못된거같아요
확인좀 부탁합니다
캔들수식
2014-08-27
163
글번호 78142
답변완료
안녕하세요
초보적인 질문 드립니다.
이동평균선이 60,120,240,400 이 있는데 분봉에서 60부터 400 이평선까지 하나씩 돌파하고
다시 하나씩 이탈하여 60이평선 아래로 내려오고 1봉전은 음봉 현재봉은 양봉이면 매수
수식 부탁드립니다.
2014-08-27
165
글번호 78140
답변완료
문의 드립니다.
안녕하세요?
지난번 문의드린 내용이
전일의 고점이 120이평 위에도 있었고 저점은 60이평 아래에 있었던 것을 수식으로 표현 하는거였습니다.
답변은
var1 = ma(C,60);
var2 = ma(c,120);
if date != date[1] Then{
Condition1 = false;
Condition2 = false;
Condition3 = Condition1[1];
Condition4 = Condition2[1];
}
if L < var1 Then
Condition1 = true;
if H > var2 Then
Condition2 = true;
if Condition3 == true and Condition4 == true and H > var1 and H < var2 Then
find(1);
입니다.
여기에 하나를 더 추가하고 싶어서 재문의 드립니다.
위 식을 사용하면서
전일에 120과 240 이 역배열인 상태에서 주가가 240이하에서 240을 돌파한후 다시 밀려서120 이평선을 이탈한후 다시 상승해서 240을 돌파하구 재하락해서 120을 이탈한 상태를 수식으로 표현하구 싶습니다.
정리하자면 오르고 내리고를 2번 반복한 상태를 표현하는식 입니다.위 조건을 사용하면서 겹치지 않게 해주시면 고맙겠습니다.
고점 저점 표현에 대해서 궁금한게 있습니다.
H 또는 L 로 표현 하는데 DayHigh 나 Daylow 는 일봉상 표현으로 알고 있고 분봉에서는 적용을 따로 해야 되는거 같은데요 그냥 H 하면 현재봉의 고점인가요 아니면 당일의 고점인가요? 분봉상 당일 고점 표현을 어떻게 하나요?
감사합니다.
2014-08-27
165
글번호 78139
답변완료
For i 문의
안녕하세요
아래 수식이 맞는지 확인 부탁드립니다.
var : cond1(true),cond2(true),cond3(false),ii(0),cond4(false);
Cond3= False;
For ii = 0 To 20{
If Var95[ii] >= var98[ii] Then
Cond3= True;
}
Cond4 = False;
For ii = 0 To 20{
If Var95[ii] <= var98[ii] Then
Cond4 = True;
}
Cond1= True;
For ii= 1 To 30{
If close[ii]>=var6[ii] Then
Cond1= False;
}
Cond2= True;
For ii= 1 To 30{
If close[ii]<=var5[ii] Then
Cond2= False;
}
# 1봉 전에서 30봉 전까지 close가 var6 이하를 유지할것
if cond1 then{
}
# 1봉 전에서 30봉 전까지 close가 var5 이상을 유지할것
if cond2 then{
}
2014-08-27
194
글번호 78138
답변완료
수식 부탁드립니다.
저번에 수식작성해주신거 잘 활용하고 있습니다.
아래식은 일봉에 아래위 밴드를 만드는 식입니다.
input : N(10);
var : sum(0), ncnt(0), mav(0);
sum = 0;
for ncnt = 0 to N-1{
sum = sum+DayClose(ncnt);
}
mav = sum/N;
plot1(mav+1.3,"1차");
plot8(mav+2.7,"2차");
plot12(mav-1.8,"3차");
plot13(mav-3.1,"4차");
여기서 나오는 선을 1. 분봉차트랑 2.틱차트에 (식이달라지나요?) 직접 뿌리고 싶습니다.
감사합니다.
2014-08-27
160
글번호 78137
답변완료
수식작성부탁드립니다
1. 1분봉기준 호가잔량차의 값이 주문전 이전10봉의 최고값이 120분동안의 최고값이고,
2. 1분봉기준 호가잔량차의 값이 +2000이상인 경우가 주문전 10분동안 2회이상이고,
3. 주문시 호가잔량차의 값이 -500이하이면, 매도!
Var : value(0);
value = (bids-asks);
if (Highest(value,10) == Highest(value,120) or Highest(value,10) == Highest
(value,BarsSinceEntry+1)) and
(dayindex <= 10 and countif(value >= 2000,dayindex+1) >= 2 or
dayindex > 10 and countif(value >= 2000,10) >= 2) and
value < -500
then sell();
2014-08-27
164
글번호 78136
답변완료
For i 질문
아래 수식이 오류가 납니다. 무엇이 잘못되었나요
var : cond3(false),ii(0);
Cond3= False;
For ii1= 0 To 20{
If Var95(ii)>=var98(ii) Then
Cond3= True;
}
var : cond4(false),ii(0);
Cond4 = False;
For ii = 0 To 20{
If Var95[ii] <= var98[ii] Then
Cond4 = True;
}
2014-08-27
166
글번호 78133
답변완료
문의드립니다
안녕하십니까
수식추가로문의드립니다
이전문의에 아래와같이말씀해주셨는데요"
추가로 적용되야하는부분이있어
문의드립니다.
1.아래조건에 더하여
처음 매수포지션이 발생하였을때도
매수이전봉의 저가를 돌파했을시 매도포지션발생
처음 매도포지션이 발생하였을때도
매도이전봉의 고가를 돌파했을시 매수포지션발생
아래식은 포지션을 취한 다음봉부터 적용되어
해당봉에서 적용되지않아 문의드립니다.
2.다른문의로
현재봉의값과 이전봉의값이 같을시 포지션을 유지하지만
현재봉의값과 이전봉도 같고 그 이전의봉도 같을시
포지션을 변경하는 식 문의드립니다.
3.하나더 문의드리면..
하루에 2번만 매수ㅡ청산.매도ㅡ청산
발생되게 하려면 어떤식을적용해야하는지 문의드립니다
4. 하나다른것..
조건의 우선순위적용을 두고싶을때 어떻게
식을작성해야하나요...
가령 조건1,조건2가 맞아도 조건3이 안맞으면
실행하지않는다
조건1,조건2,조건3 중 하나만 맞아도 실행한다
부탁드리겠습니다.
수고하십시오!
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
안녕하세요
예스스탁입니다.
if MarketPosition == 1 Then{
      if C < EntryPrice Then
            sell("sb1",AtStop,L-PriceScale);
      Else
            sell("sb2",AtStop,L[BarsSinceEntry]-PriceScale);
}
if MarketPosition == -1 Then{
      if C > EntryPrice Then
            Buy("bs1",AtStop,H+PriceScale);
      Else
            Buy("bs2",AtStop,H[BarsSinceEntry]+PriceScale);
}
            
2014-08-27
168
글번호 78125
답변완료
부탁합니다
캔들
금일캔들 +- 2%이내(외부변수)
1일전 캔들 +7%이상(외부변수)
거래량
2일전 거래량 < 1일전 거래량
금일거래량 < 1일전 거래량
금일거래량 > 2일전거래량
주석 처리부탁합니다
2014-08-27
162
글번호 78119