커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1662
글번호 230811
답변완료
지표수식 전환부탁
다음 수식을 예스수식으로 전환부탁드립니다.
<1>
수식1
A=CCI(P10)<-27;
B=CCI(P10)>27;
IF(A>B,1,0)
수식2
IF(A==B,1,0)
수식3
A=CCI(P10)<-27;
B=CCI(P10)>27;
IF(A<B,1,0)
지표조건
P10 10
<2>
수식1
t1=tema(c,P5);
t2=tema(c,P10);
t1>t2
지표조건
P5 5 P10 10
<3>
수식1
a1=ma(c,p5);
a2=ma(c,p10);
if(Crossup(a1,a2),min(a1,a2,L),0)
수식2
a1=ma(c,p5);
a2=ma(c,p10);
if(Crossdown(a1,a2),max(a1,a2,H),0)
지표조건
P5 5
P10 10
<4>
수식1
max( avg(C,short), avg(C,mid), avg(C,long)) <
min( avg(C,short), avg(C,mid), avg(C,long)) * (1+Percent/100) &&
C > highest(H(1),P10) && C(1) <= highest(H(2),P10)
지표조건
P10 10 Percent 10 short 10 MID 20 LONG 60
수식2
min( avg(C,short), avg(C,mid), avg(C,long)) > max( avg(C,short), avg(C,mid), avg(C,long)) * (1-Percent/100) &&
C < lowest(L(1),P10) && C(1) <= lowest(L(2),P10)
지표조건
P10 10 Percent 10 short 10 MID 20 LONG 60
2021-06-10
1893
글번호 149858
답변완료
시초가랑 현제가 직선수식만들수있나요?
당일 시초가를 한점으로.
현제가격 직선으로 따라다니게 수식만들어지면 좀알려주세요
2021-06-10
1637
글번호 149857
vhvh 님에 의해서 삭제되었습니다.
2021-06-10
2
글번호 149854
답변완료
함수요청
안녕하세요?
아래 전략에 대해 스크립트 작성 요청드립니다.
국내선물 1분봉으로 거래를 하고자 합니다.
- 당일의 시가가 상승 출발하되 볼린저밴드 상단 아래에서 시작하면 익봉 시가 매수
- 당일의 시가가 하락 출발하되 볼린저밴드 하단 위에서 시작하면 익봉 시가 매도
- 매수진입 이후 MACD오실레이터 값이 직전 봉 대비 감소하면 익봉 시가에 매수청산
- 매도진입 이후 MACD오실레이터 값이 직전 봉 대비 상승하면 익봉 시가에 매도청산
하루 1번만 거래를 하고자 합니다.
2021-06-10
897
글번호 149853
답변완료
수식 검토 요청드립니다
안녕하세요,
일봉 기준으로 오늘의 고가가 어제의 고가보다 높을때를 작성하려고 하는데, 가장 간단한 방법은 H>H[1]이 있을것 같습니다.
다만 이거를 HIGHEST을 써서 If H == Highest(H,2)로 해도 되는게 아닌지 해서요? 그런데 너무나 이상하게 다른 결과가 나와서요.
제가 Highest 함수를 잘 못이해하고 있는듯 합니다 ㅠㅠ
감사합니다.
2021-06-10
1029
글번호 149852
답변완료
질문
그럼 plot신호를
오늘봉만 검색하게 하는 방법은 있나요..?
없다면
비슷한 방법이라도
수식부탁드려요 ㅜㅡㅜ
2021-06-10
876
글번호 149850
타이탄 님에 의해서 삭제되었습니다.
2021-06-10
28
글번호 149849
타이탄 님에 의해서 삭제되었습니다.
2021-06-10
0
글번호 149848
답변완료
자동시스템 타주기 조건추가
항상 감사드립니다
아래 자동추세선 시스템을 아래조건으로 수정하고 싶습니다
1.본챠트 (10틱) 신호가 매수이면 t2= 1
본챠트 (10틱) 신호가 매도이면 t2= -1
2.타주기챠트 (1분) 신호가 매수이면t3= 1
타주기챠트 (1분) 신호가 매도이면t3= -1
3.본챠트 1발생시점과 타주기챠트 2발생시점의 가격차이가 10틱이내이면 t4= 1
본챠트 1발생시점과 타주기챠트 2발생시점의 가격차이가 10틱이상이면 t4= -1
4.본챠트 1발생시점과 타주기챠트 2발생시점의 시간차이가 10분이내이면 t5= 1
본챠트 1발생시점과 타주기챠트 2발생시점의 가격차이가 10분이상이면 t5= -1
5.본챠트가 t2=1 and t3= 1 and t4=1 and t5=1 이면 매수신호(b_1) 발생
본챠트가 t2= -1 and t3= -1 and t4= 1 and t5= 1 이면 매도신호(s_1) 발생
**********************************************************************************
***가중이평 스토케스틱***
Input : Period(100), Period1(28), Period2(13);
var : fk(0),StoK(0),StoD(0);
var : t1(0);
fk = (c-lowest(L,Period))/(highest(H,Period)-lowest(L,period))*100;
StoK = wma(fk,Period1);
StoD = wma(stok,Period2);
if crossup(stok,stod) Then
t1 = 1 ;
if crossdown(stok ,stod) Then
t1 = -1;
*** 자동추세선 시스템 ***
input : 비교고저점기준(10);
var : cnt(0),BTL(0),STL(0);
Array : HH[20](0),HD[20](0),HT[20](0);
Array : LL[20](0),LD[20](0),LT[20](0);
if SwingHigh(1,H,비교고저점기준,비교고저점기준,비교고저점기준*2+1) != -1 Then{
HH[0] = H[비교고저점기준];
HD[0] = sdate[비교고저점기준];
HT[0] = sTime[비교고저점기준];
Condition1 = false;
for cnt = 1 to 19{
HH[cnt] = HH[cnt-1][1];
HD[cnt] = HD[cnt-1][1];
HT[cnt] = HT[cnt-1][1];
if Condition1 == false and HH[cnt] > HH[0] and HH[cnt] > 0 Then{
Condition1 = true;
TL_Delete(BTL);
BTL = TL_New(HD[cnt],HT[cnt],HH[cnt],HD[0],HT[0],HH[0]);
TL_SetExtRight(BTL,true);
TL_SetColor(BTL,RED);
}
}
}
if SwingLow(1,L,비교고저점기준,비교고저점기준,비교고저점기준*2+1) != -1 Then{
LL[0] = L[비교고저점기준];
LD[0] = sdate[비교고저점기준];
LT[0] = sTime[비교고저점기준];
Condition2 = false;
for cnt = 1 to 19{
LL[cnt] = LL[cnt-1][1];
LD[cnt] = LD[cnt-1][1];
LT[cnt] = LT[cnt-1][1];
if Condition2 == false and LL[cnt] < LL[0] and LL[cnt] > 0 Then{
Condition2 = true;
TL_Delete(STL);
STL = TL_New(LD[cnt],LT[cnt],LL[cnt],LD[0],LT[0],LL[0]);
TL_SetExtRight(STL,true);
TL_SetColor(STL,blue);
}
}
}
if TL_GetValue(BTL,sdate,stime) > TL_GetValue(STL,sdate,stime) Then
{
if C > TL_GetValue(BTL,sdate,stime) and C[1] < TL_GetValue(BTL,sdate[1],stime[1]) and t1==1 Then{
buy("b_1");
}
if C < TL_GetValue(STL,sdate,stime) and C[1] > TL_GetValue(STL,sdate[1],stime[1]) and t1==-1 Then{
sell("s_1");
}
}
2021-06-10
1480
글번호 149846