커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4513
글번호 230811
답변완료
수식 부탁드립니다.
안녕하세요.
주식의 전략실행챠트상 보조챠트 Data2 ~ 30분챠트,
Data3 ~ 일봉챠트 적용하고요.
매수신호~ 30분챠트상의 5ma와 20ma의 골든크로스 발생시 해당봉종가에 매수신호발생(Onclose)
단, 매수신호발생가(신호발생당시 현재가) >= 일봉상 전일봉의 최고가와
전일종가의 1/2 가격(평균가격) AND,
매수신호발생 당시 해당종목의 상승률이 20% 이하 일때만 매수.
매도신호 ~ 30분챠트상 5ma 와 20ma의 데드크로스발생시 매도신호 발생.
위와 같은 수식을 구현하려 합니다.
부탁드립니다.
2016-10-10
87
글번호 102708
답변완료
종목검색에서 포착된 종목 자동매매가능한가요?
이제 입문해볼려고 하는 초보입니다.
우선 시스템트레이딩이 제가 원하는 매매를 구현할수있는지 궁금한데요
종목검색에 의해 포착한 종목을 자동으로 매수하고 매도할수있는지 궁금합니다.
예를들면,
최근 10일 안에 100일 신고가 종목중 20일 평균거래대금 80억이상인 종목중
20일선눌림때 20일선가격의 1%이내 매수,
5일선 이탈시 매도
이런게 가능한가여?
2016-10-10
111
글번호 102707
답변완료
매도식 수정 요청
* 수고많습니다.
* 요청 사항 :
if MarketPosition == 1 Then{ if CurrentContracts == MaxContracts Then ExitLong("1차매도",atlimit,AvgEntryPrice*1.025,"",int(MaxContracts*0.5),1); }
상기수식으로 1차에 50%는 매도 되었습니다.
이후에 경우는 두가지 입니다.
추가상승하던가 하락하던가 두가지인데...
추가 상승하면 종가에 매도 하면됨니다.
if MarketPosition == 1 and stime >= 151500 Then ExitLong("종가매도");
하락하면 매수가 대비 1% 상승에 도달하면 매도 하는 식좀 부탁 드림니다.
즉 1차 매도후 하락하면 매수가 대비 1% 상승 수익 에서 2차 매도
매번 고맙습니다.
2016-10-10
100
글번호 102704
답변완료
수식문의
거래종목 : 크루드오일
진입회수 하루 3회 (15시정각, 20시정각, 01시정각)
1회 거래시 각 3계약씩 진입
[진입조건]
1. 15시 진입
- T분전 시가보다 15시 정각 완성된 종가가 높을경우 15시 시초가 3계약 매수진입
- T분전 시가보다 15시 정각 완성된 종가가 낮을경우 15시 시초가 3계약 매도진입
2. 20시 진입
- T분전 시가보다 20시 정각 완성된 종가가 높을경우 20시 시초가 3계약 매수진입
- T분전 시가보다 20시 정각 완성된 종가가 낮을경우 20시 시초가 3계약 매도진입
3. 01시 진입
- T분전 시가보다 01시 정각 완성된 종가가 높을경우 01시 시초가 3계약 매수진입
- T분전 시가보다 01시 정각 완성된 종가가 낮을경우 01시 시초가 3계약 매도진입
[청산조건]
- 익절 2계약은 30틱(변수)
남은 한계약은 30틱(변수) 이상 수익시 최대수익에서 수익의 50%(변수) 하락시익절
- 손절 3계약 모두 20틱 (변수)
[기타조건- 중요]
15시 진입계약 중 19시59분까지 미청산분은 19시 59분 종가에 전량 강제청산하고
진입조건에 따라 20시 정각에 새롭게 진입
20시 진입계약 중 24시59분까지 미청산분은 24시 59분 종가에 전량 강제청산하고
진입조건에 따라 01시 정각에 새롭게 진입
01시 진입계약중 익거래일 14시 59분까지 미청산분은 익거래일 14시 59분 종가에 강제청산하고
진입조건에 따라 15시 정각에 새롭게 진입 ...
위 과정을 계속 반복함.
2016-10-10
85
글번호 102703
답변완료
거래량 및 기타 질문
항상 수고많으십니다.
1.첨부파일처럼 거래량 차트가 상승형체결거래량이 당일 전체 거래량보다 50% 많으면 빨간색으로
색이 들어가 있고 그 수치가 예를 들어 70%면 그 거래량 차트에 70%는 빨간색으로 표시하고
싶습니다.
2.일봉 바로 밑에 상한가표시부분에서 수치표현으로 시가,고가,저가,종가를 % 비율로 숫치로
표시하고 싶습니다.
3.어떤 분봉을 선택해도 체결건수 봉 색깔이 전일 동시간대비 체결건수가 많으면 빨간색,
적으면 파란색으로 표시하고 싶습니다.
2016-10-09
185
글번호 102702
답변완료
행복; 시스템식 작성 바랍니다
한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다
시스템식 관련입니다
< 조건식 1 >
- 주기; 틱봉
* 매수
- 전일 종가 대비 1% 이상 상승하기 전에 2% 하락 시( H<C[1]*1.01 and C<=C[1]*0.98 ), 시장가로 즉시 3계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 4% 상승 시, 시장가로 즉시 매도
- 또는 당일 종가에 매도
< 조건식 2 >
- 주기; 틱봉
* 매수
- 시초가가 전일 종가대비 5% 이상 상승하면, 시장가로 즉시 6계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 7% 상승 시, 시장가로 즉시 매도
- 또는 당일 종가에 매도
< 조건식 3 >
- 주기; 틱봉
* 매수
- 시초가가 결정되면, 시장가로 즉시 8계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 9% 상승 시, 시장가로 즉시 매도
- 또는 당일 종가에 매도
< 조건식 4 >
- 주기; 틱봉
* 매수
- 시초가가 결정되면, 시장가로 즉시 10계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 11% 상승 시, 시장가로 즉시 매도
- 당일에 매수가(EntryPrice) 대비 12% 하락 시, 시장가로 즉시 매도(손절매)
- 또는 당일 종가에 매도
< 조건식 5 >
- 주기; 틱봉
* 매수
- 시초가가 전일 종가 대비 13% 이상 상승하면, 현재가가 시초가 대비 14% 이상 상승하기 전에 15% 하락 시( Open>C[1]*1.13 and H<Open*1.14 and C<=Open*0.85 ), 시장가로 즉시 16계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 17% 상승 시, 시장가로 즉시 매도
- 또는 당일 종가에 매도
=================================================================================
<< 조건식 11 부터 조건식 15 를 예스랭귀지로 가능하면 작성 바랍니다. 그러나 예스랭귀지로는 안되고 예스스팟으로만 될 때는 무시하시기 바랍니다 >>
=================================================================================
< 조건식 11 >
- 주기; 틱봉
* 매수
- 전일 종가 대비 1% 이상 상승하기 전에 2% 하락 시( H<C[1]*1.01 and C<=C[1]*0.98 ) , 전일 종가 대비 2% 하락한 가격으로 3계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 4% 상승 시, 4% 상승한 가격으로 매도
- 또는 당일 종가에 매도
< 조건식 12 >
- 주기; 틱봉
* 매수
- 시초가가 전일 종가대비 5% 이상 상승하면, 시초가와 같은 가격으로 6계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 7% 상승 시, 7% 상승한 가격으로 매도
- 또는 당일 종가에 매도
< 조건식 13 >
- 주기; 틱봉
* 매수
- 시초가가 결정되면, 시초가와 같은 가격으로 8계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 9% 상승 시, 9% 상승한 가격으로 매도
- 또는 당일 종가에 매도
< 조건식 14 >
- 주기; 틱봉
* 매수
- 시초가가 결정되면, 시초가와 같은 가격으로 10계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 11% 상승 시, 11% 상승한 가격으로 매도
- 당일에 매수가(EntryPrice) 대비 12% 하락 시, 12% 하락한 가격으로 매도(손절매)
- 또는 당일 종가에 매도
< 조건식 15 >
- 주기; 틱봉
* 매수
- 시초가가 전일 종가 대비 13% 이상 상승하면, 현재가가 시초가 대비 14% 이상 상승하기 전에 15% 하락 시( Open>C[1]*1.13 and H<Open*1.14 and C<=Open*0.85 ), 시초가 대비 15% 하락한 가격으로 16계약 매수
* 매도
- 당일에 매수가(EntryPrice) 대비 17% 상승 시, 시장가로 즉시 매도
- 또는 당일 종가에 매도
수고하십시요^^
2016-10-10
105
글번호 102701
답변완료
지표식 부탁드리니다.
항상 도움 주셔서 감사합니다.
문1) TL_New 함수를 이용하여
당일(해외선물 아침 7시부터 익일 6시까지)의 고점과 저점을 찾아 연결하는
추세선을 그리고 싶습니다.
일자가 지날수록 과거의 추세선은 지우고 싶습니다.
문2) TL_New 함수를 이용하여
전일(해외선물 아침 7시부터 익일 6시까지)의 고점과 저점을 찾아 연결하는
추세선을 그리고 싶습니다.
일자가 지날수록 과거의 추세선은 지우고 싶습니다.
문3) TL_New 함수를 이용하여
특정기간의 고점과 저점을 찾아 연결하는
추세선을 그리고 싶습니다.
이때 특정기간은 외부변수로 입력하고 싶습니다.
문4) TL_New 함수를 이용하여
특정시작일과 현재까지의 고점과 저점을 찾아 연결하는
추세선을 그리고 싶습니다.
이때 특정시작일은 외부변수로 입력하고 싶습니다.
그리고 고점이나 저점이 변할때 추세선을 지우고 다시 그리고 싶습니다.
도움 부탁드립니다.
2016-10-09
98
글번호 102700
답변완료
부탁드립니다
수고하십니다
아래수식에서 색변환시 plot1(mav,"이평",GRAY);을 DarkGRAY로색변환수식을부탁드립니다
input : P(10);
var : mav(0),Direction(0);
mav = ma(c,P);
if mav > mav[1] Then{
Direction = 1;
}
if mav < mav[1] Then
Direction = -1;
if Direction == 1 Then
plot1(mav,"이평",LMAGENTA);
Else
plot1(mav,"이평",GRAY);
2016-10-09
114
글번호 102699
답변완료
49914에 대한 추가질문 드립니다.
항상 도움 주셔서 감사드립니다.
보내주신 답변대로 적용해보니 몇가지 에러가 생겨서 챠트 캡쳐를 보내드립니다.
캡쳐된 그림에 질문을 직접 적어 놓았읍니다.
또한 몇가지 추가 요청 사항도 부탁드립니다.
1) 글자의 색(빨강,파랑)이 반영되지 않습니다. ==> 전부검정
2) 글자가 봉과 겹쳐서 잘 보이지 않는데요. 상방은 더 봉위로, 하방은 더 봉아래로 표시하고 위치를 임의로 조정할수있게 설정했으면 좋겠네요.
3)직전고저점 연결선을 좀더 굵게(3pt) 표시할 수 있었으면 좋겠읍니다
4) 지표식에 보면 input: "소숫점아래자리수"(오일은 1, 골드는 2, 항셍은 0 이됩니다)와 "틱가치"를 상품에 따라 입력하게 해놓았는데요. price scale 처럼 다 상품에 자동으로 적용되는 방법이 있으면 수정부탁드립니다.
5) 지표식 맨아래 현재봉 이격틱수 표시하는 부분도 변경된 직전고점(저점) 기준을 적용할 수 있도록 수정 부탁드립니다
도움부탁드립니다. 감사합니다.
===========================================================================
<적용한 지표식입니다. 편리성을 고려해서 input 명령으로 수치와 조건을 선택할수있도록
간단하게 수정했구요. 기본 수식은 건드리지 않았읍니다>
input : Left(10),Right(10),틱가치(0.01),소수점아래자리수(2),숫자표시이격(0),눌림(382),가격진폭표시(0),진폭만표시(1),가격만표시(0),선긋기(1);
var : T(0),TL(0),tx(0),tx1(0),HD(0),HT(0),HH(0),HC(0),LD(0),LT(0),LL(0),LC(0);
var : cnt(0);
if T == 0 and SwingHigh(1,H,Left,Right,Left+Right+1) != -1 Then{
HD = sDate[Right];
HT = sTime[Right];
HH = H[Right];
HC = C[Right];
LL = HH;
T = 1;
}
if T == 0 and SwingLow(1,L,Left,Right,Left+Right+1) != -1 Then{
LD = sDate[Right];
T = sTime[Right];
LL = L[Right];
LC = C[right];
HH = LL;
T = -1;
}
if T == -1 Then{
if SwingHigh(1,H,Left,Right,Left+Right+1) != -1 and H[right] > HH Then{
HD = sDate[Right];
HT = sTime[Right];
HH = H[Right];
HC = C[Right];
}
if HH > LL and L <= HH-(HH-LL)*눌림/1000 Then{
T = 1;
if 선긋기 ==1 then {
TL = TL_New(LD,LT,LL,HD,HT,HH);
TL_SetColor(TL,RED);
}
if 진폭만표시 == 1 then {
tx = Text_New(HD,HT,HH+숫자표시이격*틱가치,NumToStr(abs(HH-LL)/PriceScale,0)); }
if 가격만표시 == 1 then {
tx = Text_New(HD,HT,HH+숫자표시이격*틱가치,NumToStr(HH,소수점아래자리수)); }
//tx = Text_New(HD,HT,HH+숫자표시이격*틱가치,NumToStr(HC,소수점아래자리수)); }
if 가격진폭표시 == 1 then {
tx = Text_New(HD,HT,HH+숫자표시이격*틱가치,NumToStr(abs(HH-LL)/PriceScale,0)+NewLine+NumToStr(HH,소수점아래자리수)); }
Text_SetStyle(tx,2,2);
LL = HH;
}
}
if T == 1 Then{
if SwingLow(1,L,Left,Right,Left+Right+1) != -1 and L[right] < LL Then{
LD = sDate[Right];
LT = sTime[Right];
LL = L[Right];
LC = C[Right];
}
if LL < HH and H >= LL+(HH-LL)*눌림/1000 Then{
T = -1;
if 선긋기 ==1 then {
TL= TL_New(HD,HT,HH,LD,LT,LL);
TL_SetColor(TL,blue);
}
if 진폭만표시 == 1 then {
tx = Text_New(LD,LT,LL-숫자표시이격*틱가치,NumToStr(abs(HH-LL)/PriceScale,0)); }
if 가격만표시 == 1 then {
tx = Text_New(LD,LT,LL-숫자표시이격*틱가치,NumToStr(LL,소수점아래자리수)); }
//tx = Text_New(LD,LT,LL,NumToStr(LC,소수점아래자리수)); }
if 가격진폭표시 == 1 then {
tx = Text_New(LD,LT,LL-숫자표시이격*틱가치,NumToStr(LL,소수점아래자리수)+NewLine+NumToStr(abs(HH-LL)/PriceScale,0)); }
// tx = Text_New(LD,LT,LL,NumToStr(abs(HH-LL)/PriceScale,0)+NewLine+NumToStr(LC,소수점아래자리수));
Text_SetStyle(tx,2,2);
HH = LL;
}
}
############### 직전 고점(저점)으로 현재봉 저점(고점) 이격틱수 표시
Text_Delete(tx1);
#최근 고점 발생
if T == 1 then{
Tx1 = Text_New(sdate,stime,L-숫자표시이격*틱가치,NumToStr((HH-l)/틱가치,0));
Text_SetColor(tx1,blue);
Text_SetStyle(tx1,0,1);
}
#최근 저점 발생
if T == -1 then{
tx1 = Text_New(sdate,stime,H+숫자표시이격*틱가치,NumToStr((h-LL)/틱가치,0));
Text_SetColor(tx1,red);
Text_SetStyle(tx1,0,1);
}
2016-10-10
199
글번호 102698