커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
5420
글번호 230811
답변완료
data2의 가격문의
참조차트의 이전봉의 고가와 저가의 차이를 구하는 식을 알고 싶습니다
아래와 같이 작성하니 오류 메세지가 뜨네요
var : Range(0);
Range = data2(H(1))-data2(L(1));
2020-03-16
366
글번호 136918
답변완료
종목검색식 부탁드립니다.
1. 매매당일
2. n분봉 조건
3. 현재 봉의 거래대금 > 1.5 * (기준봉의 바로 전 봉까지의 최대 거래대금)
1,2,3 만족하는 종목 찾기 입니다.
늘, 감사드립니다.
2020-03-16
384
글번호 136915
답변완료
문의드립니다.
1.
var1 = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5,r),s) * 100/
(0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s));
상기식에서 ema대신 삼각이평을 쓰고싶은데 부탁합니다.
2.
//
study("BolingerBands_Contraction_XBT_daily", overlay=true)
// SMA20
len2 = input(20, minval=2)
src2 = input(close)
out2 = sma(src2, len2)
plot(out2, color=black, linewidth = 1)
// BB contraction value (medium tight)
contraction_value = 0.2
// BB contraction value (very tight)
contraction_value2 = 0.1
// 2xSTDEV BB calculation
dev = stdev(src2, len2)
upper_BB = out2 + 2*dev
lower_BB = out2 - 2*dev
x1 = plot(upper_BB, color=black, linewidth = 1)
x2 = plot(lower_BB, color=black, linewidth = 1)
contraction = (upper_BB-lower_BB)/out2
//fills the BBands according to the contraction value (threshold)
fill(x1, x2, color = contraction > contraction_value ? black : contraction < contraction_value2 ? yellow: red)
plot(close)
상기식에서
fill부분에서 yellow와 red 부분은 캔들위 점으로 표시되게 부탁합니다.
2020-03-16
394
글번호 136912
답변완료
"Y축 뒤집어 보기" 상태정보
지표 수식에 "Y축 뒤집어 보기" 상태정보에 따라 조건을 추가하고 싶은데
"Y축 뒤집어 보기" 상태를 수식 내에서 알 수 있는 방법이 있나요?
시스템 신호는 자동으로 위 아래로 그려지는데 지표에 수식으로 넣은 신호는 상태정보에 따라 다시 그려 넣어야 해서 문의드립니다.
2020-03-16
360
글번호 136903
답변완료
수고 많으십니다 매번 번거롭게 해드려 죄송합니다~ 수식 부탁좀 드립니다~
해외선물에 적용할 전략이고, 주가이동평균5일선이 주가이동평균20일선을 상향 돌파하면
매수 / 하향 돌파하면 매도하는 수식인대요~ 손절 0.5p / 익절 0.5p
단, 변수로 조정 가능하게끔 하려고 하는것은 1일 1회 혹은 2회 진입 / 특정시간대에만
진입하게끔 조정하고 싶습니다 (예: 오후12시부터 오후 6시사이에 주가이동평균선이 상향
및 하향 돌파하면 매수 및 매도 1회 진입, 오후 11시부터 익일 오전3시사이에 주가이동평
균선이 상향 돌파하면 매수 및 하향돌파하면 매도 1회진입.
단, 진입신호에 따라 매수던 매도던 포지션 진입상황에서는 반대조건이 충족하더라도
신호가 나오는게 아니라 그 포지션을 유지하고 한번 진입하면
0.5p손절이던 0.5p익절로 마무리하려고 합니다.
매번 도움주셔서 감사합니다~ 수식 부탁 드립니다~ 건강하시고 수고하세요~!!
2020-03-16
453
글번호 136901
답변완료
늘 도움을 주셔서 고맙습니다. 추세선을 이용한 시스템식 가능할까요?
안녕하세요.
첨부한 그릠과 같은 시스템식이 가능한지요?
3분봉 기준으로 추세선을 그린 후에 그 추세선을 이용한 매매 시스템에 대한 요청입니다.
코로나로 인하여 많이 힘든 이때 건강하시길 바랍니다.
2020-03-17
518
글번호 136898
답변완료
수정부탁드립니다
Input:length(10),n(1),카운팅시작일자(20200313), 카운팅시작시간(070000);;
Var:j(0),k(0),q(0),TL1(0),TL2(0),TL3(0),
TL_NewBit(0),Tcond(false); // 1:NewLine 2:SetEndLine
Array:고[10,4](0),저[10,4](0); // 1:가격,2:Index,3:sDate,4:sTime
#==========================================#
if sdate >= 카운팅시작일자 and stime >= 카운팅시작시간 Then
Tcond = true;
if Tcond == true Then
{
if (sdate != sdate[1] and stime >= 카운팅시작시간) or
(sdate == sdate[1] and stime >= 카운팅시작시간 and stime[1] < 카운팅시작시간) Then
{
Value1 = HiLoLineZigZag(length,0,고,저,TL_NewBit);
If Value1 == 1 Then { // 고점
If TL_NewBit == 1 Then { // 신규 고점
//TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
TL_SetSize(TL1,1);
k = 0;
For j = 2 To 10 {
If 저[1,1] > 저[j,1] and 저[j,1] > 0 Then { // 전저점보다 낮은 이전 전저점 찾는다
k = j;
j = 10; // exit loop
}
}
If k > 1 Then { // 낮은 전저점이 찾아졌다면
TL2 = TL_New(저[k,3],저[k,4],저[k,1],sDate,sTime,(저[1,1]-저[k,1])/(저[1,2]-저[k,2])*(Index-저[k,2])+저[k,1]);
TL_SetColor(TL2,BLUE);
}
q = q + 1; // 고점이 새로 추가되었으므로 1 증가
If q > 2 and q <= 10 Then { // 1 증가했으니 2보다 커야 하고 배열 크기가 10이므로 10 이내
TL_SetEnd(TL3,sDate,sTime,(고[2,1]-고[q,1])/(고[2,2]-고[q,2])*(Index-고[q,2])+고[q,1]);
}
} Else { // 신규 고점이 아니면 기존 추세선만 연장
If k > 1 Then {
TL_SetEnd(TL2,sDate,sTime,(저[1,1]-저[k,1])/(저[1,2]-저[k,2])*(Index-저[k,2])+저[k,1]);
}
If q > 2 and q <= 10 Then {
TL_SetEnd(TL3,sDate,sTime,(고[2,1]-고[q,1])/(고[2,2]-고[q,2])*(Index-고[q,2])+고[q,1]);
}
}
If TL_NewBit == 2 Then {
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
}
} Else If Value1 == -1 Then { // 저점
If TL_NewBit == 1 Then { // 신규 저점
//TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
TL_SetSize(TL1,1);
k = k + 1; // 저점이 새로 추가되었으므로 1 증가
If k > 2 and k <= 10 Then { // 1 증가했으니 2보다 커야 하고 배열의 크기가 10이므로 10 이내
TL_SetEnd(TL2,sDate,sTime,(저[2,1]-저[k,1])/(저[2,2]-저[k,2])*(Index-저[k,2])+저[k,1]);
}
q = 0;
For j = 2 To 10 {
If 고[1,1] < 고[j,1] Then { // 전고점보다 높은 이전 전고점을 찾는다
q = j;
j = 10; // exit loop
}
}
If q > 1 Then { // 높은 전고점이 찾아졌다면
TL3 = TL_New(고[q,3],고[q,4],고[q,1],sDate,sTime,(고[1,1]-고[q,1])/(고[1,2]-고[q,2])*(Index-고[q,2])+고[q,1]);
TL_SetColor(TL3,RED);
}
} Else { // 신규 저점이 아니면 기존 추세선만 연장
If k > 2 and k <= 10 Then {
TL_SetEnd(TL2,sDate,sTime,(저[2,1]-저[k,1])/(저[2,2]-저[k,2])*(Index-저[k,2])+저[k,1]);
}
If q > 1 Then {
TL_SetEnd(TL3,sDate,sTime,(고[1,1]-고[q,1])/(고[1,2]-고[q,2])*(Index-고[q,2])+고[q,1]);
}
}
If TL_NewBit == 2 Then {
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
}
}}}
상기수식을 카운팅일자및 카운팅시간을 넣어서 실행하니 추세선표시가 나타나지않습니다
수식수정부탁드립니다
감사합니다
2020-03-16
478
글번호 136897
답변완료
파생형 ETF는 매일 리벨런싱된다고합니다.
파생형 ETF는 매일 리벨런싱된다고합니다.
제가 레버리지 ETF를 매수하여 아래수식으로 청산할때
산금액에서 10% 올랐을때 청산되는건지 아니면 리벨런싱 된 값의 10% 수익시 청산되는 건가요??
SetStopProfittarget(10,PercentStop);
2020-03-16
482
글번호 136896
답변완료
문의 드립니다.
일목균형표에서 전환선과 기준선을 노랑, 선행스팬1,2를 하늘색으로 했을때, 두 면이 겹치면 새로운 색이 되는데요,
노랑색만 남고 하늘색은 숨기는 방법이 있을까요?
항상 감사한 마음입니다.
2020-03-16
512
글번호 136891