커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7546
글번호 230811
답변완료
문의드립니다.
수고많으세요.
시간을 변수로 설정할수 있나요?
예를 들어
input : time_set(100000);
이라고 선언하고,조건문에서 if stime = = time_set then buy 라고 표현하면
실제 결과는 if stime = = 100000 then buy 로 했을때와 차이가 있습니다.
어떤 이유인지 알려주시면 감사하겠습니다.
2013-08-08
163
글번호 66259
답변완료
죄송합니다, 질문 다시 할께요.
정말 죄송합니다. 질문을 잘못해서 다시 할께요.
# 현재 매수진입중인 포지션들 중에서 제일 낮은 가격의 매수포지션 찾기.
# 현재 매도진입중인 포지션들 중에서 제일 높은 가격의 매도포지션 찾기.
혹시 For문을 이용해서 찾을수 없을까요?
번거롭게 해서 정말 죄송합니다.
2013-08-08
158
글번호 66258
답변완료
오늘의 마지막 질문입니다. ^^
제가 문의 드렸던 내용으로 아래의 수식을 만들어 주셨는데요.
1. 그럼 혹시 아래의 수식만 입력하고 실행하면 시스템트레이딩이 바로 되는건가요~?
2. 메뉴얼을 확인해보니 If조건문은 봉이 완성될때 라고 나와있는데
그럼 아래의 300원이 올랐을때 매도 하는게 신호는 300원이 올랐을때 나오고
주문은 봉이 완성될때 나가는건가요~?
3. 300원 상승한 가격에 도달했을때 매도가 나가고 추후에 300원 상승한 가격에
다시 도달해도 매매는 딱 한번만 이루어지는거죠~?
================================================================================
if MarketPosition <= 0 and stime < 150000 Then
Sell("s",atlimit,dayopen+300,10);
if MarketPosition >= 0 and stime < 150000 Then
buy("b",atlimit,dayopen-300,10);
if MarketPosition <= 0 and stime < 150000 Then
Sell("s",atlimit,dayopen+500,10);
if MarketPosition >= 0 and stime < 150000 Then
buy("b",atlimit,dayopen-500,10);
if MarketPosition == 1 Then{
if stime == 145900 Then
exitlong("bx1",AtMarket,def,"",int(MaxContracts*0.2),1);
if stime == 150000 Then
exitlong("bx2",AtMarket,def,"",int(MaxContracts*0.2),1);
if stime == 150100 Then
exitlong("bx3",AtMarket,def,"",int(MaxContracts*0.2),1);
if stime == 150200 Then
exitlong("bx4",AtMarket,def,"",int(MaxContracts*0.2),1);
if stime == 150200 Then
exitlong("bx5",AtMarket);
}
if MarketPosition == -1 Then{
if stime == 145900 Then
ExitShort("sx1",AtMarket,def,"",int(MaxContracts*0.2),1);
if stime == 150000 Then
ExitShort("sx2",AtMarket,def,"",int(MaxContracts*0.2),1);
if stime == 150100 Then
ExitShort("sx3",AtMarket,def,"",int(MaxContracts*0.2),1);
if stime == 150200 Then
ExitShort("sx4",AtMarket,def,"",int(MaxContracts*0.2),1);
if stime == 150200 Then
ExitShort("sx5",AtMarket);
}
2013-08-08
198
글번호 66257
답변완료
한가지만 더 여쭤 볼께요 ^^
한가지만 더 여쭤 볼께요 ^^
if stime == 145900 Then
exitlong("bx1",AtMarket,def,"",int(MaxContracts*0.2),1);
MaxContracts*0.2 는 잔고의 20%를 청산한다는 뜻이죠?
그럼 잔고가 4개라고 하면 20% 인 0.8개가 아니라 올림하여
1개가 청산이 되나요?
2013-08-08
158
글번호 66254
답변완료
포지션 관련해서 문의 드립니다.
현재 진입중인 포지션중에 제일 높은 가격의 포지션을 찾는 방법과
현재 진입중인 포지션중에 제일 낮은 가격의 포지션을 찾는 방법을
수식으로 부탁드립니다.
즐거운 하루 되세요^^
2013-08-08
173
글번호 66250
답변완료
초보입니다. 수식을 부탁드립니다. 꾸벅
안녕하세요. 더위에 고생이 많으십니다.
우리트레이더를 사용하려고 계좌를 신청했습니다.
저는 정말 간단하게 아래와 같이 시스템을 짜려고 합니다.
부탁드립니다.
매매 종목 : 주식 (대림산업, LG전자, 포스코 ), 선물
매매 금액 : 주식 종목은 각각 1000만원 이상, 선물은 1계약
진입 조건 : 장중 14시 49분, 주식(매도1차호가)매수, 선물(매수1차호가)매도
청산 조건 : 익일 장중 09~14시 48분 동안, 보유종목들의(선물포함) 손익이 -40만원 일떄 청산(주식 매수호가에 매도, 선물 매도호가에 매수) 실행, 손익이 +40일때 청산실행.
위와같이 시스템 트레이딩을 매일 반복을 하려 합니다.(14시48분까지 청산/14시49분에 진입)
키포인트는 보유주식 계좌 손익과 선물 계좌의 손익 계산이 되는 것같습니다.
부탁드리겠습니다. 꾸벅!
2013-08-08
206
글번호 66248
답변완료
macd가 시그널보다 큰 종목을 검색할때
검색 줄세우기에 전일 종가대비 현재가로 검색 하는 기능을
macd와 시그널의 이격도로 검색할수 있도록 수식좀 변경해주세요
다시말하면 주가가 상승하면서 macd와 macd 시그널의 간격이 벌어지게 되는데
그 벌어지는 이격도로 줄세우기 할 조건을 넣어주시면 됩니다
검색결과값이 현재가가 아닌 macd와 시그널의 이격도순으로요
Input : shortPeriod(12), longPeriod(26), Period(9);
value1 = MACD(shortPeriod, longPeriod);
If value1 > ema(value1, Period) Then
{
If C==C[1] Then
value2 = 0.001;
Else
value2 = (C-C[1])/C[1]*100;
}
Else
value2 = 0;
Find(value2);
2013-08-08
303
글번호 66240
답변완료
수식 추가문의 드립니다. ^^
질문 1. 아래 수식은 오른쪽 제가 적은 내용이 맞나요~?
if MarketPosition <= 0 and stime < 150000 Then = (9시 시작해서 15시까지)
Sell("s",atlimit,dayopen+300,10); (시가보다 300 비싸면 판다)
if MarketPosition >= 0 and stime < 150000 Then (9시 시작해서 15시까지)
buy("b",atlimit,dayopen-300,10); (시가보다 300 낮으면 산다)
dayopen+300 이라고 되어 있는데요. 만약 10,000원에 시작하여 현재가가 10,300원이 되면
매도 주문이 나가나요? 아니면 10,400원이 되어야 매도 주문이 나가나요?
2. 잔고의 수량은 알 수 없으므로 잔고의 일정 퍼센테이지를 청산 하는 건가요?
if MarketPosition == 1 Then{
위의 1이라는게 매수포지션을 보유중이라는 뜻인가요??
if stime == 145900 Then
exitlong("bx1",AtMarket,def,"",int(MaxContracts*0.2),1);
BX1은 무슨뜻인가요~? ^^;
위의 제일마지막 1은 무슨뜻인가요~?
MaxContracts*0.2 는 잔고의 20%를 청산한다는 뜻이죠?
그럼 잔고가 4개라고 하면 20% 인 0.8개가 아니라 올림하여
1개가 청산이 되나요?
if stime == 150200 Then
exitlong("bx5",AtMarket);
}
위의 수식은 잔고를 시장가에 전량 청산 한다는 뜻인가요~?
if MarketPosition == -1 Then{
위의 -1은 매도 포지션을 보유중인 경우라는 뜻인가요?
if stime == 145900 Then
ExitShort("sx1",AtMarket,def,"",int(MaxContracts*0.2),1);
if stime == 150200 Then
ExitShort("sx5",AtMarket);
}
위의 수식 설명 좀 부탁드릴께요 ^^;;
> jarlye 님이 쓴 글입니다.
> 제목 : 수식 질문이요 ^^
> 선물, 옵션, 주식선물을 주로 매매 할꺼라서 양방향 매매를 하려고 합니다.
1. A라는 종목의 시가보다 300원 상승시 10계약 매도(시장가)
A라는 종목의 시가보다 300원 하락시 10계약 매수(시장가)
(300원 상승했다가 300원 하락하면 600원씩 10계약 6,000원 수익 보는 포지션입니다.)
2. A라는 종목의 시가보다 500원 상승시 10계약 매도 (시장가)
A라는 종목의 시가보다 500원 하락시 10계약 매수 (시장가)
(500원 상승했다가 500원 하락하면 1000원씩 10계약 10,000원 수익 보는 포지션입니다.)
3. 3시까지 체결되지 않은 시스템은 전부 취소함.
3시 정각에 내가 가진 A라는 종목의 잔고중 20% 청산 (시장가)
3시 1분에 내가 가진 A라는 종목의 잔고중 나머지 20% 청산 (시장가)
3시 2분에 내가 가진 A라는 종목의 잔고중 나머지 20% 청산 (시장가)
3시 3분에 내가 가진 A라는 종목의 잔고중 나머지 20% 청산 (시장가)
3시 4분에 내가 가진 A라는 종목의 잔고 전량 청산 (시장가)
혹시 이런 수식이 가능한가요~?
가능하다면 작성 좀 부탁드려요 ^^
그리고 궁금한점 한가지는
이 시스템을 여러종목에 적용하는게 가능한가요~?
2013-08-08
178
글번호 66239
답변완료
지표식 부탁 드립니다
안녕 하세요
언제나 감사 드립니다
일일 변동폭 수식 부탁 드립니다
미리 감사 드립니다^^
2013-08-08
166
글번호 66238