커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7223
글번호 230811
답변완료
안녕하세요
안녕하세요.
수고 많으십니다.
아래 지표식 수식을 시스템 수식으로 변경 할여고 합니다.
if stime == 000000 or (stime > 000000 and stime[1] < 000000) Then
var1 = O;
위 수식에서
종가가 000000선을 상향돌파하고 다음봉의 저가가 돌파봉의 시가보다 크면 매수
종가가 000000선을 하향이탈하고 다음봉의 고가가 돌파봉의 시가보다 작으면 매도하는 
식의 수식을 부탁 드리며,매수시 10틱 매도시 10틱씩 표시되는 수식 부탁드립니다
변경된 위 수식만 남기고 나머지 수식은 삭제해 주세요.
감사합니다. 수고 하세요.
plot1(dayopen);
plot2(dayopen(1));
plot3(dayopen(2));
plot4(dayopen(3));
plot5(dayopen(4));
plot6(dayopen(5));
if stime == 000000 or (stime > 101000 and stime[1] < 101000) Then
var1 = O;
plot7(var1);
if stime == 06000 or (stime > 060000 and stime[1] < 060000) Then
var2 = O;
plot8(var2);
Text_Delete(value1);
Text_Delete(value2);
Text_Delete(value3);
Text_Delete(value4);
Text_Delete(value5);
Text_Delete(value6);
Text_Delete(value7);
Text_Delete(value8);
value1 = Text_New(sdate,stime,dayopen,"당일시가 : "+NumToStr(dayopen,2));
value2 = Text_New(sdate,stime,dayopen(1),"1일전시가 : "+NumToStr(dayopen(1),2));
value3 = Text_New(sdate,stime,dayopen(2),"2일전시가 : "+NumToStr(dayopen(2),2));
value4 = Text_New(sdate,stime,dayopen(3),"3일전시가 : "+NumToStr(dayopen(3),2));
value5 = Text_New(sdate,stime,dayopen(4),"4일전시가 : "+NumToStr(dayopen(4),2));
value6 = Text_New(sdate,stime,dayopen(5),"5일전시가 : "+NumToStr(dayopen(5),2));
value7 = Text_New(sdate,stime,var1,"00:00분시가 : "+NumToStr(var1,2));
value8 = Text_New(sdate,stime,var2,"06:10분시가 : "+NumToStr(var2,2));
2018-10-28
176
글번호 123119
답변완료
부탁 드립니다.
도움주심에 감사 드립니다.
타주기(분봉)에서 사용 하도록 부탁 드립니다.
미리 감사 드립니다.
input:n(0.01);
if (C < O and H>L*(1+n/100)) Then{
value1 =L;}
참고수식)
Input : Atime(1);
var : S1(0),D1(0),TM(0),TF1(0);
if Bdate != Bdate[1] Then{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF1 = TM%Atime;
}
2018-10-28
198
글번호 123118
답변완료
이지랭귀지 변환
안녕하세요.. 아래 내용이 이지랭귀지로 되어 있는 거라는데, 예스랭귀지로 변환 부탁드립니다.
그리고 하나더 문의드리겠습니다. 예스트레이더에서 미결제약정은 어떻게 그래프로 표현할 수 있나요?
Input : Price(close), Momentum_Value(10);
Var : ER(0), Direction(0), Volatil(0), Fastest(0.6667), Slowest(0.0645), Constant(0), Smooth(0);
Direction = Momentum(Price, Momentum_Value);
#방향성, 즉 추세는 현재 데이터 값과 일정기간 전의 데이터 값을 비교하는 모멘텀에 의해 계산됩니다.#
Volatil = Sum(Absvalue(Price[1]), Momentum_Value);
#변동성은 데이터 값과 직전 데이터 값의절대치를 일정기간 합한 것으로 계산됩니다.#
If Volatil <> 0 Then
ER = Absvalue(Direction/Volatil)
# ER(Efficiency Ratio: 효율성 비율)은 가격 방향성/변동성의 절대치로 계산됩니다.#
else ER = 0;
Smooth = ER * (Fastest - Slowest) + Slowest;
# Fastest = 2/(n+1) = 2/(2 + 1) = 0.6667 #
# Slowest = 2/(n+1) = 2/(30 + 1) = 0.0645 #
# Smooth는 ER을 이용한 평활계수로 계산에 사용되는 Fastest / Slowest 값은 Kaufman의 저서에 나온 것을 기본 값으로 사용하였습니다. #
Constant = Power(smooth,2);
# 이렇게 계산된 Constant로 정의된 Factor 값은 Smooth * Smooth로 계산됩니다. #
AdapMA = iff(Currentbar <= Momentum+Value, Price, AdapMA[1] +
Constant * (Price - AdapMA[1]));
# 최종 계산된 AMA는 첫 봉이 아닐 경우 #
# AdapMA[1] + Constant * (Price - AdapMA[1]의 값을 갖습니다. #
2018-10-29
270
글번호 123117
답변완료
종목명확인법
수고하십니다
1. 프로그램 검색식 작성중에 종목명을 알수있는 함수가 있나요
2. 시뮬레이션차트(NH트레이더 6102화면)에서는 봉 갯수를 몇개까지 지정(볼수)가능한가요
숫자를 넣어보니 5000개정도가 보이는것 같은데..
챠트봉의 객수를 세어보진 못하고 프로그램 돌려보니 4898이 찍히는데,
봉의 지정화면에서는 20000을 넣던 그 이상을 넣던 띵~~하면 경고창 같은게
반짝 지나가버려서 볼수가 없네요...
3.전략실행챠트(NH트레이더 6101화면)에서 봉 지정가능 갯수는 ???
띵 ~~~~ 소리가 안나는 숫자가 10000인거 같은데,,,
확인좀 부탁합니다
2018-10-27
207
글번호 123115
답변완료
안녕하세요 지표 문의드립니다.
항상 도움많이주시는 관리자님 안녕하세요?
피봇포인트관련 지표질문좀 드리려고 합니다.
R3 = PP + ((High - Low) x 1.000)
R2 = PP + ((High - Low) x 0.618)
R1 = PP + ((High - Low) x 0.382)
PP = (H + L + C) / 3
S1 = PP - ((High - Low) x 0.382)
S2 = PP - ((High - Low) x 0.618)
S3 = PP - ((High - Low) x 1.000)
전 주의 고가저가에 대한 피봇포인트 라인과
전 달의 고가저가에 대한 피봇포인트 라인이 나올수있는 지표를 구현할수있을까요?
감사드립니다.
2018-10-27
189
글번호 123114
답변완료
수식의 순서
게시판에 있는 답글 내용입니다.
이해가 안가서 질문 드립니다.
input : 봉수1(3),봉수2(10),손절틱수(10),익절틱수(20),감소틱수(5),최소수익틱수(10);
if C > O Then
{
var1 = index;
value1 = c;
if C == value2 and var1 >= var2+봉수1 and var1 <= var2+봉수2 and C > dayopen Then
buy();
}
if C < O Then
{
var2 = index;
value2 = C;
}
SetStopLoss(PriceScale*손절틱수,PointStop);
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopTrailing(PriceScale*감소틱수,PriceScale*최소수익틱수,PointStop);
2번째 if문에서 value2 와 var2 는 아직 변수할당도 안됐는데 저렇게 작성해도
괜찮은 건가요?
검증은 이상이 없다고 하는데 이상이 없는게 더 이상하네요.
갑자기 툭 튀어나온 value2 와 var2, 그리고는 나중에야 변수할당을 하는데도,,
다음 순서가 맞을거 같은데,,,아래와 같이 작성하면 결과가 다른가요?
초보라 궁금한게 더 많습니다.
if C > O Then
var1 = index;
value1 = c;
if C < O Then
var2 = index;
value2 = C;
if C == value2 and var1 >= var2+봉수1 and var1 <= var2+봉수2 and C > dayopen Then
buy();
2018-10-27
181
글번호 123113
답변완료
수정부탁드립니다
54932번 MACD 시그널선 검정색으로 표시을해주세요
2018-10-27
175
글번호 123112
답변완료
문의드립니다.
안녕하세요. 문의드립니다.
화면상에 특정 텍스트("예스트레이더" 등)를 화면상 랜덤위치에 나타났다 사라졌다를 표시하고 싶습니다.
나타나는 시간과 사라지는 시간을 초단위로 입력변수로 가능하게 하고싶습니다.
가능하다면 텍스트 색상과 크기를 입력변수로도 만들면 좋겠습니다.
감사합니다.
2018-10-27
184
글번호 123111
태양같이 님에 의해서 삭제되었습니다.
2018-12-31
35
글번호 123110