커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6390
글번호 230811
답변완료
수식 오류 검토 부탁드립니다.
일봉 기준으로,
현재까지의 갭의 총합을 지표로 만들려고 합니다.
즉, 오늘의 지표값은 오늘 아침 갭 + 어제 아침 갭 + 그제 아침 갭 + .... + 지수 도입 이후 둘째날의 갭이 되는 겁니다.
아래와 같이 식을 썼는데.. 그림을 그리면 아무것도 표시가 안됩니다.
var : gap(0),gapsum(0);
gap = open - close[1];
gapsum = gapsum + gap;
Plot1(gapsum, "gapsum");
참고로 위와 동일한 개념으로, 봉 길이의 합 지표를 아래와 만들었는데, 이 경우에는 정상적으로 잘 그려집니다.
var : bong(0),bongsum(0);
bong = (close - open);
bongsum = bongsum + bong;
Plot1(bongsum, "bongsum");
두 개의 차이라고는.. 갭의 경우 전일 데이터와 금일 데이터를 같이 쓴다는 것 밖에는 없는거 같은데..
왜 위에 것은 안되고, 아래 녀석은 되는지 몰겟습니다.
검토 부탁드립니다.
2016-09-18
132
글번호 101989
답변완료
해외선물 5분봉에 타주기 이평선을 넣고 싶습니다..
해외선물 지표를 만들고 있습니다.
검색을 좀 해봤는데.. 잘 안나오네요...
5분봉 차트에 60분봉 5선을 넣고 싶습니다.
수식 부탁드립니다..
미리 감사합니다..^^
2016-09-18
175
글번호 101988
답변완료
보완부탁드림니다.
옵션 자기기준가(매월 2번째금요일의 저가)의 수식을 찿아 적용해보니 금요일으ㅓ 저가가 고정되지않고 움직입니다 수정을 부탁드림니다.
var : nday(0),week(0),cond(false),N(0);
nday = date - int(date/100)*100;
week = DayOfWeek(date);
if (nday >= 8 and nday <= 14 and week == 4) or (sdate == 20160909) then
cond = true;
Else
cond = false;
if date != date[1] Then{
if cond == false and cond[1] == true Then
N = 0;
Else
N = N+1;
}
if N == 1 Then
var1 = daylow;
plot1(var1,"자기기준가");
2016-09-18
126
글번호 101987
수루지 님에 의해서 삭제되었습니다.
2016-09-18
0
글번호 101986
답변완료
문의 드립니다
1번 지수이동평균선 스시템 매매수식(수식은 잘모름)
20일선이 80일선 상승크로스
20일선이 80일선 하락크로스 일때
2번 시스템 매매수식
input : Period(15);
var : T(0);
var1 = ma(c,Period);
if var1 > var1[1] Then
T = 1;
if var1 < var1[1] Then
T = -1;
if T == 1 and T[1] != 1 Then
buy();
if T == -1 and T[1] != -1 Then
sell();
1번 시스템매매인 20일선이 80일선을 상승크로스 만족시
2번 시스템 매매수식의 15일선으로 매수진입 및 청산만 진행하고
1번 시스템매매인 20일선이 80일선을 하락크로스 만족시
2번 시스템 매매수식의 15일선으로 매도진입 및 청산만 진행되도록 구현하고자 합니다
지수이동평균선 3개 종류는 수시로 변경하여 사용할 계획입니다
(시스템 매매 설정창의 변수값 3대를 수시로 변경하여 사용할 계획임)
오늘도 오늘 하루되세요
2016-09-19
119
글번호 101985
답변완료
추가부분의익절
Input : shortPeriod(5), longPeriod(20),최대수량(10);
Var : value(0),vol(0);
if MarketPosition != 0 Then{
if PositionProfit < 0 Then
Vol = MaxContracts+1;
Else
vol = 1;
}
if MarketPosition == 0 Then{
if PositionProfit(1) < 0 Then
Vol = MaxContracts(1)+1;
Else
vol = 1;
}
value = OSCP(shortPeriod, longPeriod);
If CrossUP(value, 0) Then
Buy("b",OnClose,def,min(최대수량,Vol));
If CrossDown(value,-0) Then
Sell("s",OnClose,def,min(최대수량,Vol));
# 추적청산
input : AtrMult(6), AtrPeriod(6);
var : AtrVal(0), posHigh(0), posLow(0);
# ATR 추적청산
ATRVal = ATR(AtrPeriod) * AtrMult;
PosHigh = Highest(H,BarssinceEntry+2);
PosLow = Lowest(L,BarsSinceEntry+2);
If MarketPosition == 1 and C < ma(c,20) Then
sell("ATR1", AtStop, PosHigh - ATRVal,min(최대수량,Vol));
If MarketPosition == -1 and C > ma(c,20) Then
buy("ATR2", AtStop, PosLow + ATRVal,min(최대수량,Vol));
수고합니다.
위수식에서
매매후 추가부분을2p 달성시 즉시 이익실현합니다
즉 손실후 계속추가한부분만 분봉즉시 이익실현합니다.
(그리고 나머지는 원점에서 다시 손실마다 한개씩추가해갑니다)
항상감사합니다.
2016-09-19
112
글번호 101984
답변완료
수식 부탁 드립니다.
안녕하세요.
당일청산 연결선물 분봉, 틱봉사용 차트에 사용하는 아래 일부 수식을
갭보정 수식으로 변경 요청드립니다.(차트는 갭보정 안한 차트사용)
input : P1(10),P2(20);
var1 = ema(OI-dayOI(1),P1);
var2 = ema(OI-dayOI(1),P2);
if crossup(var1,var2) Then
buy();
if CrossDown(var1,var2) Then
sell();
감사합니다.
2016-09-18
115
글번호 101983
고도산 님에 의해서 삭제되었습니다.
2016-09-18
31
글번호 101982
답변완료
다시 문의 드립니다.
1. 아래 식은 수식을 만들어 주신 주 마다 변동되는 고점 저점 에 대한 로그를 적용한 피보나치 수열 적용 된 지표인데요. 주중에 찍은 최고점이나 최저점이 바뀌었을 때 그에 맞게 자동으로 로그를 적용한 피보나치 수열 적용된 지표를 만들고 싶습니다. 아래의 식을 적용하면 화면을 확대 했을때 화면상의 고점과 저점을 잡아서 지표가 만들어져 버리더라고요.
2. 매주 와 당일에 대한 지표를 각각 하나씩 수정 부탁 드립니다.
매번 진심으로 감사드립니다.
input : Per1(23.6),Per2(38.2),Per3(50.0),Per4(61.8),Per5(76.4);
var : HH(0),LL(0);
if index == 0 or date > date[1]+30 then{
HH = H;
LL = L;
}
if H > HH Then
HH = H;
if L < LL Then
LL = L;
var1 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per1/100));
var2 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per2/100));
var3 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per3/100));
var4 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per4/100));
var5 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per5/100));
plot1(var1,"23.6");
plot2(var2,"38.2");
plot3(var3,"50.0");
plot4(var4,"61.8");
plot5(var5,"76.4");
2016-09-19
132
글번호 101981