커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7741
글번호 230811
답변완료
Smoothed Moving Average
http://www.20minutetraders.com/learning/moving_averages/smooth-moving-average.php
여기에 나와있는 Smoothed Moving Average 구현이 가능할까요?? 메타트레이더에서는 기본으로 나와있는 함수인데.. Yes에서는 찾을 수가 없어서..한번 문의해 봅니다.
혹시 간단하게 만들어 주실 수 있으면, 대단히 감사하겠습니다~~~
2011-02-25
1326
글번호 36081
답변완료
수식문의
항상 빠르고 친절하게 대답해주셔서 감사합니다^^
아래수식으로 매도식을 실행하니까 신호가 나와야할 자리에서
신호가 나오질 않는군요ㅠㅠ..
부탁드립니다.
Input:P1(5),P2(10),P3(20);
value51=EMA(C,P1);
value52=EMA(value51,P1);
value53=EMA(C,P2);
value54=EMA(value53,P2);
value55=EMA(C,P3);
value56=EMA(value55,P3);
var1=value51*2-value52;
var2=value53*2-value54;
var3=value55*2-value56;
if var1<=var2 and var2<=var3 Then{
if crossdown(c,var1)and C<=0 Then
sell("매도");
}
청산은 매수식과 똑같이 강제청산과 트레일링스탑 그리고 목표가청산식을
썼읍니다. 이것도 바꾸어야하는지요
SetStopLoss(1);
SetStopTrailing(3,4,PercentStop,1);
SetStopProfittarget(6);
SetStopEndofday(144000);
그럼 수고하십시요^^
2011-02-25
953
글번호 36080
답변완료
질문드립니다
식이맞는지 검토 부탁드립니다... 실제 예를 찾기 힘들어서 시물레이션 돌리기가
힘들어서 그럽니다..
if count == 0 Then{ "진입이 아직 없을때"
if ((cond3==true) and (cond2 == true) and "조건 3,2,4와 5일선이 60일선보다크고
(cond4 == true) and (ma(C,5) > ma(c,60)) 11시 30분 이전이거나"
and (stime < 113000))
or
((cond3==true) and (cond2 == true) and "조건 3,2,4를 만족하고 12시까지
(cond4 == true) and crossup(ma(C,5),ma(c,60)) 5일선이 60일선(아직 돌파 전)
and (stime < 120000)) 돌파하면 매수한다..
then buy();
}
질문 2 : 약간 우둔한 질문이 될 수도 있겠는데.. 5,60일선 골든크로스날때 현재
시스템에서 구현할수 있는 여러 매수식중에서 가장 빠르게 매수가 이루어지게 하는
식은 무엇인가요?(자동주문에서) 또 데드크로스가 날때.. 가장 빨리 청산이 이루어지게 하는
식은 또 무엇일까요? 예를 들자면 ma(C,5),ma(c,60)) <-- 여기에서 c 를 h 혹은
l 로 바꾼다거나.. 아니면 매수식을 onclose 가 아닌 다른 식으로 한다거나 등등
(쉽게 말하자면.. 골든즉시 매수.. 데드즉시 청산.. 이게 구현 가능한지 부탁
드립니다)
감사합니다
2011-02-25
860
글번호 36079
답변완료
지표식 부탁드립니다
전일 고점 중심 저점 갭보정으로 수식 부탁드립니다
2011-02-25
877
글번호 36078
답변완료
피라미딩 관련 질문입니다.
진입 시 같은 봉에서는 피라미딩 금지, 다른 봉에서는 피라미딩 가능하게 하고
청산 시에는 같은 봉에서 반대방향 재진입만 허용하고 싶습니다.
예를 들어서 매수명 a1, a2가 있고 매도명 b1,b2가 있을 때
1. 진입할 경우
같은 봉에서 a1, a2 신호 동시 발생 시 a1만 진입,
a1 발생 후 청산전에 a2 발생시 a2도 진입 가능
2. 청산할 경우
a1 진입 후 차후 청산신호 발생 시, 청산 봉에서 동시에 매도 신호 발생시 매도진입
가능하지만, a1 진입 후 차후 청산신호 발생 시, 청산 봉에서 동시에 매수 신호
발생하면 매수진입은 하지 않는 구조입니다.
피라미딩 설정창에서 다른 신호 진입 가능하게 선택했습니다.
감사합니다.^^
2011-02-24
903
글번호 36077
답변완료
시스템 수식 부탁드립니다.
항상도와 주심에 감사를 드립니다.
1. 시스템 수식에서 매수, 매도 신호가 나오면 신호가격에서 매수는 3틱아래
가격에 주문이 들어 가도록하고 매도는 신호가격에서 3틱위에 주문이 들어
가도록하는 시스템식 부탁합니다.
2. 그리고 만약 매수와 매도 신호가 나오고 신호가격 대비 3틱 유리하도록 설정이
된후 체결이 안되었을 경우에 신호나온후 2분후 또는 신호가격대비 0.5이상
상승, 하락하여 변동이 생길경우에는 자동으로 진입 주문을 취소시키는 수식
부탁합니다.
감사합니다.
2011-02-24
900
글번호 36076
답변완료
차트분할
안녕하세요?
예스트레이더의 한 화면에 2*4 = 8개의 차트를 띄우는 방법을 알고 싶습니다.
플로팅 상태로 띄어서 크기를 조정하는 것도 해 봤는데, 이 경우 특정화면을 크게 했다 작게 했다 하기가 불편해서요.
그러니까 무슨 분할 방식으로 8개의 차트를 띄운후, 어딜 클릭하면 특정화면이 전체화면으로 커졌다가, 다시 어디를 클릭하면 그 화면이 다시 작아져서 자기 자리로 가게 하는 그런 방법 없을까요?
감사합니다.
2011-02-24
879
글번호 36075
답변완료
수식설명 좀 달아줄수 있으시나요?
안녕하세요? 바쁘실텐데.. 문의 드립니다.
이 로직은 박상우 팀장님께서 STAD클럽 로직을 예스로 변환시켜서 공개해주신
로직인데요. 하나하나 뜯어보면서 알아볼라구 하는데...
넘 막히는 점이 많아서요. 아래처럼 문장하나마다 설명을 좀 달아주실시 있나요?
공부하는데 많은 도움이 될거 같습니다. 부탁드립니다.
/*
[STAD_02] Advance Decline Divergence
1. 설정
연결선물 5분봉, 당일청산
수수료 0.006%, 슬리피지 0.025pt
2. 전략내용
//역추세 추종형
진입1
가격은 신저가 형성하고 AD지표는 신고가 형성할때 매수
가격은 신고가 형성하고 AD지표는 신저가 형성할때 매도
진입2
가격이 신저가 형성할때 AD지표가 신저가 형성이 없으면 그 시점의 고가와 인덱스를 저장한 후
두봉 이내에 해당 고가를 상향돌파하면 매수
가격이 신고가 형성할때 AD지표가 신고가 형성이 없으면 그 시점의 저가와 인덱스를 저장한 후
두봉 이내에 해당 저가를 하향이탈하면 매도
청산
진입봉 저가(고가)로부터 추적청산
3. 외부변수
Len : Accumulation Distribution 지표의 지수이평을 구하기 위한 기간 값
P : 최저가와 최고가를 구하기 위한 기간 값
Div : 저(고)가 추적청산을 위한 분할 값
Mult : 추적청산을 위한 진입시점의 저가에서 차감하기 위한 AR(averge range)이평의 승수
*/
# 외부입력변수 할당
Inputs: Len(5), P(60), DiV(25), mult(5);
#내부입력변수 할당
vars: MP(0), stopprice(0), Move(0);
If High - Low <> 0 then
Move = ema( (C - O) / (H - L) * V, len);
# 고가와 저가와 차이가 0이 아니면 즉 봉 값의 변화가 있으면, move란 수치내부변수에= 이동평균 (고가-시가) / (고가-저가) X 이동평균 X 5에 저장한다.
If Low < lowest( low, P )[1] and Move > highest( Move, P)[1] then
Buy("B2",onclose, def,1);
# 만약 저가가 바로전 봉의 P기간중의 저가중의 최저가보다 크면, AD값이 전 봉의 P기간중의 AD값중 가장 높은 값보다 더 높으면
# 종가에 매수한다.
# ? ("B2",onclose, def,1)에서 DEF,1이 의미하는 바는 무엇인가요?
If High > Highest( High, P )[1] and Move < Lowest( Move, P)[1] then
Sell("S2",onclose, def,1);
# 만약 고가가 바로전 봉의 P기간중의 고가중의 최고가보다 크면, AD값이 전 봉의 P기간중의 AD값중 가장 낮은 값보다 더 높으면
# 종가에 매도한다.
If Low < Lowest( Low , P )[1] and MRO(Move < lowest( Move , P )[1],20,1) == -1 then {
var1= h;
var2 = index;
}
# 만약 저가가 P기간중의 최저가보다 작고,
# 내부변수 VAR1에 고가를 할당하고
# 내부변수 VAR2에 인덱스에 봉의 번호를 저장한다? 무슨뜻이죠?
If High > Highest( High, P )[1] AND MRO(Move > Highest( Move, P)[1],20,1) == -1 then {
var3 = L;
var2 = index;
}
if index - var2 < 2 then {
if CrossUp(C, var1) and C > dayOpen then buy();
if CrossDown(C, var3) and C < dayOpen then sell();
}
mp = marketposition;
if MP == 1 and MP[1] <> 1 then Begin
StopPrice = low - ma(range,4)*mult;
end;
StopPrice = High + ma(range,4)*mult;
if MP == -1 and MP[1] <> -1 then begin
end;
If MP == 1 then begin
exitlong ("ExitLong", atstop,stopprice );
stopprice = stopprice +( low-stopprice )/Div;
end;
If MP == -1 then begin
exitshort ("Exitshort", atstop,stopprice);
stopprice = stopprice - (stopprice-high)/Div;
end;
setstopendofday(150400);
# 당일 15시04분에 종가청산 한다. 당일청산 원칙
2011-02-24
953
글번호 36070
답변완료
문의드림니다
5분봉 당일매매로 주차트 콜옵션 참조차트 선물차트(data2) 사용시
직전 매도청산가격 < 직전 매도진입가격 -1 이면 이후 매매 금지하는 수식부탁 드림니다
(여기서 직전청산가격과 직전매수진입가격은 선물가격을 기준으로함 ,즉
매매는 주차트인 옵션에서 이루어 지지만 옵션매도진입당시 그리고 옵션매도청산당시의
선물 가격을 기억하여 선물기준으로 -1p 수익시 추가매도진입 금지하고자 함
2011-02-24
824
글번호 36069