커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7565
글번호 230811
답변완료
수식문의
청산과 동시에 리버스 진입 시에는 2배의 증거금이 필요한 것으로 알고 있습니다.
그러나 시스템트레이딩설정창에서 지연진입을 이용하면 2배의 증거금 없이도 진입이 되고 있는 것으로 알고 있습니다.
그런데 시스템트레이딩설정창에서 설정하지 않고 매매시스템 수식에서 지연진입하게 시간을 조정할 수 있는 수식을 부탁드립니다.
2013-05-05
179
글번호 62798
답변완료
지표문의 드립니다.
모두 일봉기준
가장 일반적인 등락율 기준으로 쓰이는 지표(등락율)
2013년 5월 4일 선물등락율 +0.23% 라고 나오는 것
1.기본차트(data1)의 전일종가기준 등락율
2.data2의 전일종가기준 등락율
부탁드립니다.
이전 버전의 예스랭귀지와는 수식작성이 변경되었나요? 이상하네요
2013-05-05
230
글번호 62797
답변완료
수식문의 드립니다.
버전이 변경되면서 랭귀지도 변경되었나요? 기본 구버전 예스랭귀지 수식이 먹히지 않네요.
과거 수식은
Var1 = ((Data2(closed(0))-data2(closed(1)))/Data2(closed(1))*100;
이라놓고 참조데이터 일봉으로 추가하면 data2의 종가 기준 등락율이 나왔는데
현재는 나오지 않네요.
1. 참조데이타(data2,일봉기준) 종가 기준 등락율
2. 구 랭귀지가 신 랭귀지에서 먹히지 않는 것이 있다면 참조할 수 있는 자료 부탁드립니다.
2013-05-05
213
글번호 62796
답변완료
선물연결지수
선물챠트를 적용하여 투자를 하고 있습니다
선물6월물을 기본챠트 종목으로 적용하여 시스템적용을 하고 있는데
1. 선물 6월물 챠트와 선물연결지수의 차이는 무엇인가요?
2. 선물투자를 할려면 아무거나 하면 되는건가요?
2013-05-05
212
글번호 62795
답변완료
수식 오류
참고식으로 작성하여 주신 샘플을 적용하여
계좌객체, 챠트 객체, 종목객체를 적용하여
수식을 작성후 검증을 하니
25번줄에 오류가 발생하였습니다..
1. 수식에 오류 무엇때문인지 모르겠습니다...
붙임이미지 참조하여 수정 부탁드립니다.
2. 객체는 계좌 객체하고, 챠트객체(동일챠트이름적용)만 적용하면 되는지? 아니면
다른 객체도 추가해야 하는가요?
3. 챠트1에 적용된 지표식과, 시스템식은 챠트객체만 추가하면 예스스팟에서 바로 적용이 되는건가요?(별도로 예스스팟에서 지표식과 시스템식 안만들어도 되는지?)
4. 예스스팟의 신호는 장중에만 나오는가요? 아니면 장끝나고도 금일 장중에 신호가 났던겄들이 리스트 되나요?
5. 예스트레이더에서 사용하였던 시스템 설정창을 예스스팟에서 사용할려면 어떻게 하면 됩니까?(손절매, 당일청산, 적용하고 싶습니다. )
6. 챠트1에서 적용되었던 신호(예스트레이더에 시스템이 적용되어 있는챠트)와 예스스팟에서 적용된 신호를 비교해 볼려고 하는데 예스스팟에서 미완성신호가 적용된 챠트진입위치를 보고 수동으로 진입을 할려면 어디를 보면 되나요?
(예스스팟에서 미완성진입신호 와 청산신호를 주면 반자동 매매를 하고 싶습니다.)
질문이 너무 많아 죄송합니다..
예스스팟을 사용할려니 너무 궁금한게 많네요..
답변부탁드립니다
- 아래 -
//---------------------------------------------------------------------
var cnt;
function Main_OnStart()
{
cnt = 0;
}
//봉완성(시가수신) 카운트 0로 초기화
function Chart1_OnBarAppended(nData)
{
cnt = 0;
}
function Chart1_OnRiseIncompleteSignal(IncompleteSignal)
{
//Buy미완성신호 발생
if (IncompleteSignal.signalKind == 1)
{
//미완성신호 발생 카운트
cnt = cnt+1;
//현재봉에서 첫번째 발생한 미완성 신호이고 차트 포지션이 무포지션이나 매도포지션일때
if cnt == 1 && Chart1.GetOpenContracts() <= 0 then
Account1.OrderBuy(Main.GetOrderCode(IncompleteSignal.code), 1, 0, 1);
}
//Exitlong미완성신호 발생
if (IncompleteSignal.signalKind == 2)
{
//미완성신호 발생 카운트
cnt = cnt+1;
//현재봉에서 첫번째 발생한 미완성 신호이고 차트 포지션이 매수포지션일때
if cnt == 1 && Chart1.GetOpenContracts() >= 1 then
Account1.OrderSell(Main.GetOrderCode(IncompleteSignal.code), 1, 0, 1);
}
//Sell미완성신호 발생
if (IncompleteSignal.signalKind == 3)
{
//미완성신호 발생 카운트
cnt = cnt+1;
//현재봉에서 첫번째 발생한 미완성 신호이고 차트 포지션이 무포지션이나 매수포지션일때
if cnt == 1 && Chart1.GetOpenContracts() >= 0 then
Account1.OrderSell(Main.GetOrderCode(IncompleteSignal.code), 1, 0, 1);
}
//ExitShort미완성신호 발생
if (IncompleteSignal.signalKind == 4)
{
//미완성신호 발생 카운트
cnt = cnt+1;
//현재봉에서 첫번째 발생한 미완성 신호이고 차트 포지션이 매도포지션일때
if cnt == 1 && Chart1.GetOpenContracts() <= -1 then
Account1.OrderBuy(Main.GetOrderCode(IncompleteSignal.code), 1, 0, 1);
}
}
2013-05-05
364
글번호 62794
답변완료
질문드립니다
안녕하세요 전에 선물식 부탁드려서 아래와 같이 작성해 주셨는데요, 주식에 적용하고 싶어서 추가 질문 드립니다.
-----------------------------------------------------------------------------
[전에 작성해 주신 조건 및 수식]
1) 진입조건 : 스톡케스틱(25,6,6)이 과매도 구간진입후 20선을 상향돌파할 때
(완성봉 기준), 단 캔들이 200일 이평선 위에 있어야 함(1계약 진입)
2) 청산조건 : 목표수익 1.0 point 도달시/ 손실 1.5 point 도달시
3) 진입조건 추가 : 1)의 조건으로 매수후 손절(1.5point)이 발생됬다면, 캔들이
200일선 아래에 있더라도 즉 캔들과 이평선의 위치에 상관없이
스톡케스틱이 20선을 상향 돌파한다면 매수진입(계약수 2계약)
단 1차례에 한하여만 진입(손절후 1차례만 캔들과 이평선 위치
무시하고 매수진입)
var1 = StochasticsK(25,6);
var2 = StochasticsD(25,6,6);
var3 = ma(c,200);
if crossup(var1,20) and c > var3 Then
buy("b1",OnClose,def,1);
if MarketPosition == 0 and IsEntryName("b1",1) == true and IsExitName("StopLoss",1) == true Then{
if crossup(var1,20) Then
buy("b2",OnClose,def,2);
}
SetStopProfittarget(1,PointStop);
SetStopLoss(1.5,PointStop);
------------------------------------------------------------------------------
[추가질문 1]
같은 조건에서 매수조건 발생되면 1계약이 아니라 100만원 진입
그리고 손절되었을때 2계약이 아니라 200만원 진입
[추가질문 2]
같은 조건에서 매수조건 발생되면 1계약이 아니라 100주 진입 그리고
손절되었을때 2계약이 아니라 200주 진입
※아니면 시스템 식이 아니고 "시스템 매매 설정"창의 비용/수량 텝에서 고정자산으로 설정할 수 있는 방법도 있나요? 근데 문제는 손절당했을 때 그 다음 진입시 2배의 물량 또는 2배의 자산을 투입하고 싶은데 이분분을 시스템식에서 설정할 수 있을까요?
또는 고정자산은 "시스템 매매설정 창"에서 설정하고 손절이후에 진입하는 자산은 당초 "시스템 매매설정 창"에서 매수했던 자산보다 2배의 자산으로 매수할 수 있는 수식이 가능한가요?
[추가질문 3]
3)의 "진입조건 추가사항"에 하나의 매수조건 더 추가
- 손절후에는 캔들이 200일선 아래에 있더라도 스토케스틱이 20선을 상향 돌파하면 2배의 자산으로 매수하는 식에 하나의 매수조건을 더 추가 하고자 합니다. 즉 손절이 발생하지 않고(이전에 익절이 됬겠죠) 캔들이 200일선에 진입한 후에는 스톡케스틱이 20선 통과시 첫번째 신호는 무시하고 두번째 신호(20선 돌파)에서 매수
목표수익은 각각 1.5%
손절은 각각 2.0%
부탁드립니다. 수고하세요.
2013-05-05
216
글번호 62793
답변완료
문법 수정 ㅠㅠ 줄수 7 과 11 에서 에러발생
안녕하세요 수정요구합니다
Var: Formula0(0), Formula1(0), Formula2(0), Formula3(0);
Formula0 == (stime >= 090500 && stime < 150300) && (c < csar(0.02,0.2) && ma(c,10)>ma(c,26) && c>c[2] &&
c>(ma(C,accumN(iff(stime==090000,dayindex()-highest(iff(dayHigh()==H,dayindex(),0),dayindex()+1),0),dayindex()+1)+(dayindex()+1)+1))
||
ma(C,5)>ma(C,10)&&ma(C,10)>ma(C,20)&&ma(C,20)>ma(C,60) &&
(C-ma(C,5)) / STD(5)>=5 ||
ma(C,5)>ma(C,10)&&ma(C,10)>ma(C,26)&&ma(C,26)>ma(C,52) &&
crossup(macd(12,26), ema(macd(12,26),60)));
Formula1 == VR(12) < 100 && VR(12)[1] >= 300 || (C-ma(C,5)) / STD(5)<=3 ;
2013-05-04
227
글번호 62792
답변완료
문법 에러 수정요청
안녕하세요 수정요청합니다
Formula0 = (c>(ma(C,accumN(iff(stime==090500,dayindex()-highest(iff(dayHigh()==H,dayindex(),0),dayindex()+1),0),dayindex()+5)+(dayindex
()+1)+1))
||
(VR(6) > 100 && VR(12)[1] <= 300)||
(MFI(8) <= 12&&ma(c,5)>ma(c,26) &&
ma(c,5)>ma(c,10)>ma(c,20)) ) && // 이부분 > 가 에러 나요 ㅠㅠ
accumN(iff(((stime >= 090000 && stime < 150300)&&
감사^^
2013-05-04
235
글번호 62791
답변완료
지표식 재문의합니다.
안녕하세요..
연결선물 일봉에서 아래와 같은 지표식을 문의했습니다.
-- 매월 둘째주 목요일 기준 옵션 만기일 기준으로 목요일 당일 시가 - 1번,
전달의 최고가 - 2번, 전달의 최저가 -3번
1,2,3번을 일직선으로 표시하는 지표식을 문의 ---
아래와 같은 답변을 받았습니다..
var : va1(0),va2(0),va3(0),선물만기일(0);
var : O1(0),O2(0),H1(0),H2(0),L1(0),L2(0);
va1 = int(date/100)-int(date/10000)*100;
va2 = date - int(date/100)*100;
va3 = DayOfWeek(date);
#옵션 만기일
if va2 >= 8 and va2 <= 14 and va3 == 4 then{
if date != date[1] Then
{
O1 = O;
O2 = O1[1];
}
Condition1 = true;
}
Else
Condition1 = false;
if Condition1 == false and Condition1[1] == true Then{
if date != date[1] Then
{
H1 = H;
L1 = L;
H2 = H1[1];
L2 = L1[1];
}
}
if H > H1 Then
H1 = H;
if L < L1 Then
L1 = L;
plot1(O1);
plot2(H1);
plot3(L1);
위와 같은 지표식을 적용한 결과 청부파일과 같은 엉뚱한 지표가 나옵니다.
무엇이 잘못되었는지 재작성 부탁드립니다.
수고하세요..
2013-05-04
242
글번호 62790