커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7745
글번호 230811
답변완료
수식문의 드립니다.
우선,
친절한 답변감사합니다.
질문 16470 관련 다시 질문드립니다.
#16470 질문 답변내용
안녕하세요
예스스탁입니다.
참조데이터는 봉완성된 것만 기준으로
그려지므로 2010.12.7(수)의 경우
2010.12.7(수) 밤에 시작하는 미국 데이터는 당일은 사용되지 않고
다음날이 되어야 사용됩니다.
ma(data2(closed(1)), period1);
와 같이 작성되면 주종목의 주기로 전일 종가를 사용하여 그리는 것이므로
미국 데이터를 기준으로 Period1기간동안 이평한 값이 아닙니다.
input : Period1(10);
plot1(data2(ma(C,Period1)));
와 같이 작성되어야 하며
한봉전 기준은
input : Period1(10);
plot1(data2(ma(C,Period1)[1]));
과 같이 작성하셔야 합니다.
즐거운 하루되세요
#답변내용 종료
*** 새로운 추가 질문 ***
두 가지 질문 드립니다.
1.여기에서 한봉전 기준이 아니라 "한 날짜" 전으로 나타내려면 어떻게 해야 하나요?
2.동일하게 Data2의 "한 날짜전"의 MACD를 나타내는 지표 부탁드립니다.
2010-12-13
738
글번호 34295
sdfadfe 님에 의해서 삭제되었습니다.
2010-12-13
15
글번호 34294
답변완료
부탁합니다.
수식에 문외한이라 여기에 질문드립니다,. heiken ashi의 수식 표현에 대해 어느 사이트에서 알게된 수식입니다. 그런데 예스 언어가 아니것 같군요. 예스언어로 바꾸어줄수 있는지요?
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Red
#property indicator_color2 White
#property indicator_color3 Red
#property indicator_color4 White
#property indicator_width1 1
#property indicator_width2 1
#property indicator_width3 3
#property indicator_width4 3
//----
extern color color1 = Red;
extern color color2 = White;
extern color color3 = Red;
extern color color4 = White;
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
double ExtMapBuffer4[];
//----
int ExtCountedBars=0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//|------------------------------------------------------------------|
int init()
{
//---- indicators
SetIndexStyle(0,DRAW_HISTOGRAM, 0, 1, color1);
SetIndexBuffer(0, ExtMapBuffer1);
SetIndexStyle(1,DRAW_HISTOGRAM, 0, 1, color2);
SetIndexBuffer(1, ExtMapBuffer2);
SetIndexStyle(2,DRAW_HISTOGRAM, 0, 3, color3);
SetIndexBuffer(2, ExtMapBuffer3);
SetIndexStyle(3,DRAW_HISTOGRAM, 0, 3, color4);
SetIndexBuffer(3, ExtMapBuffer4);
//----
SetIndexDrawBegin(0,10);
SetIndexDrawBegin(1,10);
SetIndexDrawBegin(2,10);
SetIndexDrawBegin(3,10);
//---- indicator buffers mapping
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexBuffer(2,ExtMapBuffer3);
SetIndexBuffer(3,ExtMapBuffer4);
//---- initialization done
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//---- TODO: add your code here
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
double haOpen, haHigh, haLow, haClose;
if(Bars<=10) return(0);
ExtCountedBars=IndicatorCounted();
//---- check for possible errors
if (ExtCountedBars<0) return(-1);
//---- last counted bar will be recounted
if (ExtCountedBars>0) ExtCountedBars--;
int pos=Bars-ExtCountedBars-1;
while(pos>=0)
{
haOpen=(ExtMapBuffer3[pos+1]+ExtMapBuffer4[pos+1])/2;
haClose=(Open[pos]+High[pos]+Low[pos]+Close[pos])/4;
haHigh=MathMax(High[pos], MathMax(haOpen, haClose));
haLow=MathMin(Low[pos], MathMin(haOpen, haClose));
if (haOpen
{
ExtMapBuffer1[pos]=haLow;
ExtMapBuffer2[pos]=haHigh;
}
else
{
ExtMapBuffer1[pos]=haHigh;
ExtMapBuffer2[pos]=haLow;
}
ExtMapBuffer3[pos]=haOpen;
ExtMapBuffer4[pos]=haClose;
pos--;
}
//----
return(0);
}
//+------------------------------------------------------------------+
2010-12-13
761
글번호 34293
답변완료
감사합니다. 한가지더
상위분봉 시초가 감사합니다.
한가지 더 30분봉이나 1시간봉에서 주봉이나 월봉의 시초가는 어떻게
표시하나요?
2010-12-13
609
글번호 34291
답변완료
부탁하나 드립니다..
수고많습니다..
식을 포트폴리오를 구성하려고 하는데 예제를 보고 따라 해 보니
잘 안되서 도움 부탁드립니다.
3가지 식이 있는데..(스토캐스틱. macd 이동평균) 각각의 조건에 따라 진입
청산되는 식을 만들고 싶습니다..
스토캐스틱으로 진입한 식은 스토로만 청산
macd로 진입한것은 macd로만 청산
이평으로 진입한것은 이평으로만 청산..
그래서 조건만 맞다면 3개가 동시에 매수포지션을 가지고 있어도 됩니다.
다른 분들은 3개의 식을 돌려 그래프도 각각과 3개 더한게 같이잘 보이던데
전 잘 안되네요...부탁합니다.
추운 겨울날 몸 조심하시고 늘 행복하세요~~
2010-12-13
560
글번호 34290
답변완료
문의드립니다
외국인 코스피 순매수금액지표와 순매도금액지표
외국인 옵션콜순매수금액지표 옵션풋순매도금액지표를
각각의선들을 겹치기하는방법이요 한지표안에서볼수있는지요
서로크로스도일어나고 각지표마다 지갈길가는지표요수식을만들수있나요
부탁드립니다
2010-12-13
596
글번호 34286
답변완료
그물망 챠트를 어떻게 만들어야하나요???
그물망 챠트를 만들고 싶은데 도저히 어떻게 만들어야 할지 모르겠네요????
처음부터 어떻게 만들어야하는지 설명 부탁드리며...
수식은 또 어떻게 첨부해야하는지 설명 부탁드립니다...
메일로 전송해 주심 더욱더 감사하겠습니다..^^*
ky8153@lycos.co.kr
꼭 부탁드립니다..^^*
2010-12-13
1041
글번호 34285
답변완료
간단한 질문
if CrossUp( data2(C) , 2000) then buy();
if CrossDown( data2(C), 1900) then sell();
여기서 2000과 1900을 변수로 지정 하려면 어떻게 식을 바꾸어야 하나요?
input : p1(0) 이런식인듯 한데요..
2010-12-13
599
글번호 34280
답변완료
상위분봉의 시초가를 하위분봉에 표시하는 방법 문의입니다.
예를 들면 5분봉과 30분봉을 사용할 경우에
5분봉에 30분봉의 시초가를 선으로 표시하는 방법 문의드립니다.
참조함수가 아닌 식을 따로 작성해야 한다고 하시기에....
2010-12-13
586
글번호 34274