커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4696
글번호 230811
답변완료
수고하십니다.시스템 문의 드립니다.
input : P(5);
var1 = ma(C,P);
if crossup(C,var1) Then
buy();
if CrossDown(C,var1) Then
sell();
저번식 봉이 5이평선 돌파시 매수 매도 신호 보여주는 식인데요
여기서 식을 보완해서 봉이 20이평선 아래에서 5이평선을 하향이탈하면 매도신호 이때
5이평선이 20이평과 역배열 이고 5이평선 고점이 직전고점 보다 낮아야하구요
5이평선을 다시 회복하면 청산 신호
봉이 20이평선 위에서 5이평선을 상향 돌파하면 매수 이때 5이평선이 20이평과
정배열이고 5이평선 저점이 직전 저점 보다 높아야 하구요 5이평선을 다시
이탈시 매수 청산신호
그리고 봉이 20이평선 위에 있을때는 매수 청산하고 신규매도는 안되구요
봉이 20이평선 아래있을때는 매도청산만 하구 신규 매수는 안하구요
이렇게 만들수 있을까요? 복잡해서 --; 식을 만들줄 몰라서 답답하네요~
부탁드립니다.
항상 수고하십시오!
2016-01-08
116
글번호 94212
답변완료
시스템 함수 문의 드립니다
1. 3일 이평선이 10일 이평선과 20일 이평선을 골든크로스 시 매수
3일 이평선이 10일 이평선과 20일 이평선을 데드크로스 시 매도
2. 주가가 5일 이평선을 골든크로스한 후 다시 데드크로스 한 후 다시 골든크로스 하면 매수
주가가 5일 이평선을 데드크로스한 후 다시 골든크로스 한 후 다시 데드크로스 하면 매도
3. 현재 1분봉의 가격이 최근 이전 10개봉의 최고가를 돌파시 매수
현재 1분봉의 가격이 최근 이전 10개봉의 최저가를 붕괴시 매도
당일 청산(2시 45분까지
4. 일목균형의 기준선 상향돌파 시 매수
일목균형의 기준선 하향돌파 시 매도
오늘도 부탁드립니다! 감사해요
2016-01-08
110
글번호 94209
답변완료
진입횟수 변경요청(11-1)
안녕하세요?
함수수정요청드립니다.
아래의 함수에서 진입횟수를 제한하지 않고 조건이 발생되면 계속 매매가 가능하도록 요청드립니다.
(진입의 횟수를 변수로 설정하여 1회, 2회,3회..로 변경할 수 있도록 작성요청드립니다.)
감사합니다.
------------------------------------------------------------------------------------
var : entry1(0);
var : ho1(0),OL1(0),HL1(0);
var : maho1(0),maOL1(0),maHL1(0);
var : cnt1(0),sumho1(0),sumOL1(0),sumHL1(0);
var : EntryCnt1(0);
var : V1(0),V2(0),V3(0),V4(0),V5(0);
var : V6(0),V7(0),V8(0),V9(0),V10(0);
if bdate != bdate[1] Then
entry1 = 0;
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
entry1 = entry1+1;
ho1 = Dayhigh-Dayopen;
OL1 = DayOpen-DayLow;
HL1 = DayHigh-DayLow;
sumho1 = 0;
sumOL1 = 0;
sumHL1 = 0;
for cnt1 = 1 to 10{
sumho1 = sumho1 + (dayhigh(cnt1)-dayopen(cnt1));
sumOL1 = sumOL1 + (DayOpen(cnt1)-DayLow(cnt1));
sumHL1 = sumHL1 + (DayHigh(cnt1)-DayLow(cnt1));
}
maho1 = sumho1/10;
maOL1 = sumOL1/10;
maHL1 = sumHL1/10;
V1 = dayopen(0)+maho1;
V2 = DayOpen(0)-maOL1;
V3 = DayOpen(0)+maHL1;
V4 = DayOpen(0)-maHL1;
V5 = NthMaxList(1,V1,V2,V3,V4);
V6 = NthMaxList(2,V1,V2,V3,V4);
V9 = NthMaxList(3,V1,V2,V3,V4);
V10 = NthMaxList(4,V1,V2,V3,V4);
V7 = (V5+V10)/2;
V8 = (V6+V9)/2;
if MarketPosition == 0 and entry1 == 0 Then{
if V7 > V8 Then
sell("s1",AtStop,v7);
if V7 < V8 Then
sell("s2",Atlimit,v8);
}
if MarketPosition == -1 and IsEntryName("s1") == true Then{
ExitShort("sp1",atlimit,V9);
ExitShort("sl1",AtStop,V6);
}
if MarketPosition == -1 and IsEntryName("s2") == true Then{
ExitShort("sp2",atlimit,V9);
ExitShort("sl2",AtStop,V6);
}
var : TF(0);
var : Xtime(0), Etime(false),cnt(0),mav1(0),mav2(0);
var : HV(0),LV(0),HV1(0),LV1(0),HV2(0),LV2(0);
Array : HH[50](0),LL[50](0),CC[50](0);
mav1 = ma(c,5);
mav2 = ma(C,20);
TF = TimeToMinutes(stime)%30;
if Bdate != Bdate[1] Then{
Etime = true;
if stime >= 090000 Then
Xtime = 050000;
Else
Xtime = 060000;
}
if Bdate != Bdate[1] or (TF < TF[1] and stime > stime[1]) or date != date[1] Then{
HH[0] = H;
LL[0] = L;
for cnt = 1 to 49{
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
CC[cnt] = CC[cnt-1][1];
}
}
if H > HH[0] Then
HH[0] = H;
if L < LL[0] Then
LL[0] = L;
CC[0] = C;
if HH[25+2] > 0 Then{
HV = HH[0];
LV = LL[0];
HV1 = HH[1];
LV1 = LL[1];
HV2 = HH[2];
LV2 = LL[2];
for cnt = 0 to 25{
if HH[cnt] > HV Then
HV = HH[cnt];
if LL[cnt] < LV Then
LV = LL[cnt];
if HH[cnt+1] > HV Then
HV = HH[cnt+1];
if LL[cnt+1] < LV Then
LV = LL[cnt+1];
if HH[cnt+2] > HV Then
HV = HH[cnt+2];
if LL[cnt+2] < LV Then
LV = LL[cnt+2];
}
var1 = (HV+LV)/2;
var2 = (HV1+LV1)/2;
var3 = (HV2+LV2)/2;
if Etime == true then{
if MarketPosition == 0 and CC[0] > var1 and CC[1] < var2 and CC[2] < var3 and C >= daylow+0.5 Then
buy("b",AtMarket);
if MarketPosition == 1 and c <= highest(H,BarsSinceEntry)-0.5 and CrossDown(mav1,mav2) Then
ExitLong("bx",AtMarket);
}
}
if stime == Xtime or (stime > Xtime and stime[1] < Xtime) Then{
Etime = false;
ExitLong();
}
2016-01-08
130
글번호 94208
답변완료
종목검색 수식 부탁드립니다.
1. 저가와 종가가 일치
2. 20일선이 우상향
3. 주가가 20일선 위에 위치
4. 최근 6개월 이내에 상한가 1회이상 있었던 종목
2016-01-08
136
글번호 94207
답변완료
검색식 문의드립니다
좋은하루 보내시기바랍니다.
1.당일 전체누적체결강도upvol비율이
전장(오전9~12시까지)의 누적체결강도upvol비율보다 높고
2.전장(12시종가)종가보다 일종가가 높고
3.후장시가(12시종가)보다 일종가가 높은 종목검색식 부탁드립니다.
***검색은 전장과 비교하기위해 12시 이후에 하게되고 이전일자도 검색 가능하게
부탁드립니다.
감사합니다.
2016-01-08
132
글번호 94206
답변완료
45854번 수식 수정 부탁드립니다
감사합니다
2016-01-07
181
글번호 94205
답변완료
수식(매수)요청
* 새해 항상 건강 하시고 복 많이 받으십시요^^
* 요청 사항: 매수 가격 지정이 안되는데 함 봐주십시요.
→조건 만족후 매수 주문시 전일 종가 가격 으로 매수 가격을 지정하고 싶습니다.
if MarketPosition == 0 and dayindex() >= 1 and DParity <= 105
then
buy("전일종가매수",AtStop,DayClose(1));
여기서 buy("전일종가매수",AtStop,DayClose(1)) 로직이 안 먹히고
화면에 매매가격 설정값 으로 매수 가격이 나갑니다.(현재가 +_ 1호가)
▶ 매수시 전일 종가 가격으로 매수가 지정은 불가 한가요?
* 항상 고맙습니다.^^
2016-01-07
134
글번호 94203
답변완료
지표식 부탁드립니다.
160틱 차트에서 저가에서 얼마나 상승했고, 고가에서 얼마나 하락했는지 표시하려고 합니다.
저가(3포인트 파랑색)로 부터 +0.5, +1.0, +1.5, +2.0, +2.5, +3.0 단위로 빨강색 선으로 그려주시고 우측에 빨강색으로 숫자 써 주세요...
고가(3포인트 빨강색)로 부터 -0.5, -1.0, -1.5, -2.0, -2.5, -3.0 단위로 파랑색 선으로 그려주시고 우측에 파랑색으로 숫자 써 주세요...
2016-01-07
115
글번호 94202
답변완료
검색문의드립니다.
종목검색 문의드립니다.
당일 5분봉 기준으로 첫번째봉의 시가가 전일종가보다 크고,
첫번째봉의 크기(종가-시가)는 전일종가의 2% 이상되는 종목들을 장중에 검색하고자 합니다.
수식을 어떻게 해야하는지요... 감사합니다.
2016-01-07
125
글번호 94201