커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4344
글번호 230811
답변완료
54451 보완 부탁드립니다
빠른 작성에 감사드립니다.
승률이 너무 저조하여 조건식 1개와 청산 방법을 변경하였으면 합니다.
1. 20개봉을 상향돌파하고(2개 이전봉), 1개 이전봉에서도 고점(value3)을 깨지않는 조건을 추가바랍니다.
2. 청산 방법은 익절 10틱과 손절 10틱으로 조정해 주시면 감사하겠습니다.
________________
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 전 20개봉 상향돌파시 매수 진입 작성 관련하여
> 안녕하세요
예스스탁입니다.
Input : shortPeriod(5), longPeriod(20);
value1 = ma(C, shortPeriod);
value2 = ma(C, longPeriod);
value3 = highest(H,20);
If crossup(C,value3[1]) Then
{
Buy();
}
If CrossDown(value1, value2) Then
{
exitlong();
}
즐거운 하루되세요
2017-08-15
148
글번호 112035
답변완료
부탁드립니다.
-분봉차트에 월물시작일(전월물 만기익일, 예로서 이번 9월물은 8월11일)의 등가 콜(data2)과 풋 (data3)옵션의 종가 양합을 표시하는 지표식이 가능하다면 부탁드립니다. 동일 차트에 월물시작일의 선물(data1)종가 지표식도 부탁드립니다.
2017-08-15
166
글번호 112034
답변완료
수식부탁드립니다.
감사합니다 청산식 부탁드립니다
포지션 1일때, 포지션-1일때
(수익청산)
30틱이상 상승하면 최대상승값 대비 15틱 하락하면 청산
50틱이상 상승하면 최대상승값 대비 20틱 하락하면 청산
(손절)
30틱이상 하락하면 최대하락값 대비 10틱 상승하면 청산
(종료)
구동 시간동안 청산 수익들의 합이 100틱 이면 거래 종료
input : short(12),long(26),sig(9),P1(5),P2(50),P3(200);
input : 시작시간(220000), 종료시간(055000);
var : mav1(0,data1),mav2(0,data1),mav3(0,data1);
var : Bcond(false,data1),Scond(false,data1),Tcond(False);
var : ii(0,data1),i1(0,data1),i2(0,data2),Bcount(0,data1),Scount(0,data1);
mav1 = data1(ma(c,P1));
mav2 = data1(ma(c,P2));
mav3 = data1(ma(c,P3));
ii = data1(index);
if stime == 시작시간 or (stime >시작시간 and stime[1] < 시작시간) Then{
Tcond = true;
}
if stime == 종료시간 or (stime > 종료시간 and stime[1] < 종료시간) Then{
Tcond = false;
}
if CrossUp(mav1, mav2) Then{
i1 = ii;
}
if Crossdown(mav1, mav2) Then{
i1 = ii;
}
if CrossUp(mav2, mav3) Then{
i2 = ii;
Bcount = 0;
}
if Crossdown(mav2, mav3) Then{
i2 = ii;
Scount = 0;
}
if mav2 > mav3 and MarketPosition == 1 and MarketPosition[1] != MarketPosition Then
Bcount = Bcount+1;
if mav2 < mav3 and MarketPosition == -1 and MarketPosition[1] != MarketPosition Then
Scount = Scount+1;
//진입
if Tcond == true Then{
if Bcount < 2 and mav1 > mav1[1] and mav1 < mav2 and mav2 > mav3 and ii > i1 and i1 > i2 Then
buy("Buy");
if Scount < 2 and mav1 < mav1[1] and mav1 > mav2 and mav2 < mav3 and ii > i1 and i1 > i2 Then
sell("Sell");
}
2017-08-15
145
글번호 112033
답변완료
시스템 수식 부탁드립니다
안녕하세요, 항상 노고에 감사드립니다.
저 혼자 작성해보려고 하니 되는게 하나도 없네요ㅠ
시스템 작성 문의 드립니다.
아래 조건에서 -4P(2차진입기준포인트), 10P(1계약 이익실현기준포인트), 1차 진입 계약수, 2차 진입 계약수를 변수화 시켜서 수식 작성 가능할까요?
예를들어 tick2(40), exitick(100), ent1(2), ent2(1) 이런 식으로 수식에서 Point를 틱수로도 설정 가능한가요?
혹시 가능하다면 그렇게 수식작성 부탁드리고 불가능하다면 그냥 아래 조건처럼 Point로 작성 부탁드리겠습니다.
------------------------------------------------------
1.
"5일선과 20일선 크로스" 발생 시 '1차' 2계약 매수/매도 진입
2계약 보유 시에만
'계좌 평균단가'에서 10P 수익일 때 1계약 이익실현
1계약 보유 시에만
"5일선과 20일선 크로스" 발생 시 해당 종가(1차 진입가)에서 -4P 하락/상승(눌림목) 터치할 경우 '2차' 1계약 추가 진입 (시스템의 최대보유수량은 2계약으로 제한, 최초 2계약이 이미 진입되어 있고 이익실현이 발생하지 않은 상태에서 눌림목이 발생하여도 추가 1계약은 진입하지 않음)
"5일선과 20일선 크로스"(반대방향) 발생 시 보유물량(1계약 또는 2계약) 전량청산 & 동시에 2계약 신규진입
---------------------------------------
2.
"5일선과 20일선 크로스" 발생 시 '1차' 1계약 매수/매도 진입
1계약 진입 후 위 크로스 발생 당시 캔들 종가에서 -4P 하락/상승(눌림목) 터치할 경우 '2차' 1계약 추가 진입
'계좌 평균단가'에서 10P 수익일 때 1계약 이익실현(포지션 수량 1계약, 2계약 상관 없이)
1계약 또는 2계약의 진입이 이루어 진 후 반대방향의 "5일선과 20일선 크로스"가 발생하기 전까지는 같은방향의 재진입은 하지 않아야 함
"5일선과 20일선 크로스"(반대방향) 발생 시 보유물량(1계약 또는 2계약) 전량청산 & 동시에 1계약 신규진입
---------------------------------------------------------
3.
궁금한 점이 있습니다. 계좌 포지션이 없을 때 (처음 시스템을 시험에서 자동으로 변경할 때) ExitLong() 함수가 들어가면 매도로 1계약이 진입이 되나요?
MarketPosition=1 or MarketPosition=2 일 때만 ExitLong() 함수를 작성하면 해당 문제를 해결할 수 있나요?
다소 복잡하지만 부탁드리겠습니다.
2017-08-20
160
글번호 112032
답변완료
행복; 시스템식 작성 바랍니다
한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다
시스템식 관련입니다
<< 시스템식 >>
- 주기; 일봉
input : 총투자금(천만원);
- if marketingposition == 0 and sdate == 20161221 and (종가>48,000원) 이면 총투자금의 20%를 (종가)에 1차 매수
- if marketingposition == 1 and (1차 매수 후 2차 매수전) and (고점대비 10% 하락) 이면 (장중에 시장가로 즉시) 전량 매도
- if marketingposition == 1 and sdate >= 20161221 and (1차 매수 후 처음으로, 고가>49,400원) 이면 총투자금의 19%를 (장중에 시장가로 즉시) 2차 매수
- if marketingposition == 1 and (2차 매수 후 3차 매수전) and (고점대비 12% 하락) 이면 (장중에 시장가로 즉시) 전량 매도
- if marketingposition == 1 and sdate >= 20161221 and (1차 매수 후 처음으로, 고가>50,000원) 이면 총투자금의 18%를 (장중에 시장가로 즉시) 3차 매수
- if marketingposition == 1 and (3차 매수 후 4차 매수전) and (고점대비 14% 하락) 이면 (장중에 시장가로 즉시) 전량 매도
- if marketingposition == 1 and sdate >= 20161221 and (1차 매수 후 처음으로, 고가>50,600원) 이면 총투자금의 17%를 (장중에 시장가로 즉시) 4차 매수
- if marketingposition == 1 and (4차 매수 후 5차 매수전) and (고점대비 16% 하락) 이면 (장중에 시장가로 즉시) 전량 매도
- if marketingposition == 1 and sdate >= 20161221 and (1차 매수 후 처음으로, 고가>51,100원) 이면 총투자금의 16%를 (장중에 시장가로 즉시) 5차 매수
- if marketingposition == 1 and (5차 매수 후) and (조건E) 이면 (장중에 시장가로 즉시) 전량 매도
2차 매수부터 5차 매수는 조건만족시 (장중에 시장가로 즉시) 매수이기 때문에 주가가 급등하면 하루에 2차 매수부터 5차 매수까지 한꺼번에 발생할 수 있습니다
시스템식 작성바랍니다
수고하십시요^^
2017-08-15
160
글번호 112031
내가간다 님에 의해서 삭제되었습니다.
2017-08-14
42
글번호 112030
답변완료
시스템 문의 드립니다.
항상 도움 주셔서 감사합니다.
문1) 해외선물 30분봉 매매를 합니다.
예를 들어 캔들이 20일 이평을 크로스 할때 매매 한다고 가정할 경우
10시 15분에 캔들이 20일 이평을 업크로스 하는 조건이 만족하였지만
실제로 포지션 진입은 봉이 완성되는 10시 30분이 되어야 매매가 되는
것으로 알고 있습니다.
저는 30분봉 완성이 되지 않았지만 30분봉에서 해당 조건이 만족하는 시점에
바로 포지션을 들어가고 싶습니다.
1) 스탑로스처럼 조건 만족시 바로 매매가 되는 그런 방법 답변 부탁드립니다.
2) 만약에 조건 만족시 바로 진입이 안된다면 아래의 방법에 대한 수식 부탁드립니다.
1분봉이나 틱차트를 메인으로 놓고 30분봉 차트를 참조하여
조건은 30분봉에서 체크하고 30분봉에서 조건이 만족하는 시점에
1분봉이나 틱차트 봉이 완성되는 시점에 바로 진입을 하고 싶습니다.
(수식은 1분봉 기준으로 부탁드립니다.)
위의 방법으로 수고스럽겠지만 간단히 샘플 수식 부탁드립니다.
감사합니다.
2017-08-15
159
글번호 112029
답변완료
문의드립니다
(1)input : Per1(23.6),Per2(38.2),Per3(50.0),Per4(61.8),Per5(76.4);
var : HH(0),LL(0),H1(0),L1(0);
var : tx11(0),tx12(0),tx13(0),tx14(0),tx15(0),tx16(0),tx17(0);
var : tx21(0),tx22(0),tx23(0),tx24(0),tx25(0),tx26(0),tx27(0);
HH = dayhigh;
LL = daylow;
H1 = dayhigh(1);
L1 = daylow(1);
var11 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per1/100));
var12 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per2/100));
var13 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per3/100));
var14 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per4/100));
var15 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per5/100));
plot1(HH,"당일고",RED);
plot2(LL,"당일저",RED);
plot3(var11,"당일Per1%",BLUE);
plot4(var12,"당일Per2%",RED);
plot5(var13,"당일Per3%",BLACK);
plot6(var14,"당일Per4%",RED);
plot7(var15,"당일Per5%",BLUE);
plot3 1틱하락돌파시블루색강조1틱상승시레드색 plot7 1틱상승돌파시 레드색1틱하락시블루색강조 부탁드립니다~~
(2)
if bdate != bdate[1] Then{
var1 = 0;
var21 = var2[1];
var31 = var3[1];
}
if abs(C-O) > 0 and H-L > var1 Then{
var1 = H-L;
var2 = H;
var3 = L;
}
if var2 > 0 and var3 > 0 then{
plot1(var2);
plot2(var2-abs(var2-var3)*0.236);
plot3(var2-abs(var2-var3)*0.382);
plot4(var2-abs(var2-var3)*0.500);
plot5(var2-abs(var2-var3)*0.618);
plot6(var2-abs(var2-var3)*0.764);
plot7(var3);
}
plot2번레드색, plot6번블루색강조식부탁드립니다~~`항상감사드립니다
2017-08-19
163
글번호 112025
답변완료
문의드립니다
안녕하세요^^
당일 장중에 특정 이벤트가 발생한 이후에는 진입을 안 시키는 수식이 궁금합니다,
예를들어, 첨부한 그림에서처럼 중심선(파란색선)에서 주가가 지지한 이후에는 매도(sx1) 신호가 발생하지 않도록 하려면 어떤 수식이 필요한지요?
감사합니다.
2017-08-14
200
글번호 112024