커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7294
글번호 230811
이섭대천 님에 의해서 삭제되었습니다.
2017-10-14
1
글번호 113368
답변완료
함수 요청입니다..
사용자함수에 data2가 들어간 함수를 만들었는데요.
제함수 = 함수내용;
마무리하고 올바로 검증된뒤에 다른 지표식에 넣고 어제 데이터를 불러오려고 (1)를 넣으면
'함수의 입력 값이 필요 없습니다.' 라고 나옵니다. 어떤 곳에 오류가 생기면 이렇게 나오나요?
2017-10-14
145
글번호 113367
답변완료
이평선변곡
안녕하세요?
첨부한 그림처럼 7이동평균선이 하락하다가 상승전환하는 B점에서 라인이 출력되고 있는데 이동평균선이 -를 유지하다 +로 전환되는 점을 기준으로 A점의 일정틱수(변수)아래 또는 위에 라인출력되도록 부탁드립니다. 예를들면 이평선이 하락하다 상승전환되면 "5틱아래"에 매수신호 상승하다 하락하면 "5틱 아래"에 매도신호 발생되도록 부탁드립니다
현재사용공식은 ~~~
input : P(7);
var : mav(0),T(0);
mav = ma(C,P);
if mav > mav[1] Then
T = 1;
if mav < mav[1] Then
T = -1;
if T[1] == 1 and T[1] != T[2] Then
var1 = O;
if T[1] == -1 and T[1] != T[2] Then
var1 = O;
if T == 1 Then
plot1(var1,"1",RED);
if T == -1 Then
plot1(var1,"1",blue);
입니다...
2017-10-16
351
글번호 113359
답변완료
부탁드립니다
아래수식은 당일 최고거래량을 나타내는 지표입니다
여기다 "거래량은 5000개이상"을 삽입해주십시요
var : HV1(0),HH1(0),HV2(0),HH2(0),HV3(0),HH3(0);
if Bdate != Bdate[1] then
{
HV1 = V;
HH1 = H;
HV2 = 0;
HH2 = O;
HV3 = 0;
HH3 = O;
}
Else{
if V > HV1 Then{
HV1 = V;
HH1 = C;
HV2 = HV1[1];
HH2 = HH1[1];
HV3 = HV2[1];
HH3 = HH2[1];
}
if V < HV1 and V > HV2 Then{
HV2 = V;
HH2 = C;
}
if V < HV1 and V < HV2 and V > HV3 Then{
HV3 = V;
HH3 = C;
}
}
plot1(HH1,"최고거래량고가");
plot2(HH2,"두번째최고거래량고가");
plot3(HH3,"세번째최고거래량고가");
2017-10-13
162
글번호 113355
답변완료
수식 문의 드립니다.
안녕하세요
첨부 파일은 yes global에 있는 기본적인 추세선 입니다.
첨부된 파일의 추세 연결점에서 진입이 가능한지 확인 부탁드립니다.
파란색일때 매수진입
빨간색일때 매도진입
이렇게 가능한지 확인 부탁드립니다.
해당봉에서 진입이 바로 되지 않는다면, 다음봉 시작과 동시에 진입해도 됩니다.
그런데 색이 칠해져 있지 않는 원은 무슨의미를 갖고 있는지 확인 부탁드립니다.
감사합니다.
2017-10-13
195
글번호 113352
답변완료
수식문의합니다
1. 이트레이더 고점저점 지표입니다 예스변화부탁드려요
a=avg(c,20):
valuewhen(1,a>=a(1),a)
a=avg(c,20):
valuewhen(1,a<a(1),a)
2. 기본차트 속성에 없네요
시가
고가
저가
전일종가
당일중심가 지표부탁드려요
2017-10-13
175
글번호 113351
답변완료
문의드립니다.
수식왕 예스스탁님 항상 감사합니다.
1. 시스템
a 직전하락봉이 10개봉 이상이면 하락추세로 인정한다.
a-1 반락을 하더라도 3개봉이 넘지 않으면 하락추세로 인정한다. (휩쏘 제거)
a-2 즉 4개봉연속 지표가 상승한다면 상승추세로 인정한다. 하락추세 끝
a-3 3개봉은 a의 조건을 어기지 않는다. 곧 3개봉은 하락추세봉 카운트에 들어간다.
b 시그널선(10)아래에 있으면 하락추세로 인정한다.
볼린저밴드 밴드폭을 토대로 위와 같은 필터를 만들고 싶습니다. 어떻게 하면 될까요?
기존 조건에다 위와 같은 필터를 추가하고 싶습니다.
2. 시스템의 신호가 발생하는 것은 차트에서 확인 가능한 듯 한데요. 그럼 실거래에서 매수가 됐는 지 안됐는 지는 어떻게 확인을 해야 하나요?
3. 어제 알려주신 것중에서 결국 봉 미완성시에는 주문을 할 수가 없으니 더 짧은 프레임의 움직임의 지표 등을 통해서 비슷한 결과를 내야 한다는 말을 듣고 곰곰히 생각을 해봤는데요. 그럼 30분봉에서 20이평을 기준으로 매매를 하고 싶다면 5분봉 120이평(예를 들어서)같은 것을 기준으로 매매해야 그나마 비슷한 결과를 낼 수 있다는 말로 이해하면 될런지요. 그럼 위의 예처럼 긴 타임프레임을 짧은 타임프레임으로 나누어서(30분/5분) 지표값에다 단순 곱하면 비슷한 결과가 나올까요? (물론 휩쏘같은 것이 발생은 하겠지만..)
4. 55082 1번 질문 재질문 드립니다.
답변감사합니다. 1번은 이평이 하락하고 있을 때나 기울기가 0일 때(위로도 아래로도 안가고 있을 때) 이평을 상향으로 돌릴 수 있는 값으로 만들 수 있을까요? 지표를 적용해보니 5이평이 이미 상승하고 있을 때도 값이 나오고 있더라구요. 이평이 하락이거나 기울기가 0일 때 상향으로 돌릴 수 있는 값을 찾고 이걸로 관찰해보고 시스템을 만들어 볼 생각이었습니다.
5.
SetStopTrailing에서 ATR-3 이런 지표를 인수를 집어 넣으려면 어떤 형식으로 집어 넣어야 하나요?
2017-10-13
208
글번호 113350
답변완료
수정부탁드립니다
55083번 당일시가선과시간시가선동일함
시간시가선 점검요청함
부탁드립니다
2017-10-13
150
글번호 113348
답변완료
문의드립니다
Input:length(5);
Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),TL2(0),TL3(0),Text1(0),처리구분(""),
TL_Val1(0),TL_Val2(0);
Var:TL11(0),TL12(0),TL13(0),TL14(0),TL15(0),TL16(0),TL17(0),TL18(0),TL19(0),TL20(0),tx(0);
Var:TL21(0),TL22(0),TL23(0),TL24(0),TL25(0),TL26(0),TL27(0),TL28(0),TL29(0),TL30(0),mav(0),T(0);
Array:고점[10,2](0),저점[10,2](0);
처리구분 = "";
If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then
{ If 저점[1,1] > L Then 처리구분 = "저점처리";
If 고점[1,1] < H Then 처리구분 = "고점처리";
}
Else If Highest(H,length) == H and lastHiVal <> H Then 처리구분 = "고점처리";
Else If Lowest(L,length) == L and lastLoVal <> L Then 처리구분 = "저점처리";
If 처리구분 == "고점처리" Then
{
lastHiVal = H;
If 고점[1,2] < 저점[1,2] Then
{
For j = 10 DownTo 2
{
고점[j,1] = 고점[j-1,1];
고점[j,2] = 고점[j-1,2];
}
}
If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then
{
고점[1,1] = H;
고점[1,2] = Index;
sBar = Index - 저점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
TL_Delete(TL11);
Text_Delete(Text1);
If 고점[3,1][1] < 고점[2,1][1] and 고점[2,1][1] > 고점[1,1][1] and 저점[2,1][1] < 저점[1,1][1] Then
TL_Delete(TL2);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],sDate[eBar],sTime[eBar],고점[1,1]);
//TL11 = TL_New(sDate[index-고점[2,2]],sTime[index-고점[2,2]],고점[2,1],sDate[1],sTime[1],고점[2,1]);
//Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],NumToStr(고점[1,1],2));
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
TL_SetColor(TL1,BLACK);
//TL_SetColor(TL11,BLACK);
TL_SetSize(TL1,3);
//TL_SetSize(TL11,2);
If 고점[3,1] < 고점[2,1] and 고점[2,1] > 고점[1,1] and 저점[2,1] < 저점[1,1] Then
{
sBar = Index - 저점[2,2];
eBar = Index - 저점[1,2];
}
}
}
If 처리구분 == "저점처리" Then
{
lastLoVal = L;
If 저점[1,2] < 고점[1,2] Then
{
For j = 10 DownTo 2
{
저점[j,1] = 저점[j-1,1];
저점[j,2] = 저점[j-1,2];
}
}
If 저점[1,2] < 고점[1,2] or 저점[1,1] > L Then
{
저점[1,1] = L;
저점[1,2] = Index;
sBar = Index - 고점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
TL_Delete(TL11);
Text_Delete(Text1);
If 저점[2,1][1] < 저점[1,1][1] and 저점[2,1][1] < 저점[3,1][1] and 고점[2,1][1] > 고점[1,1][1] Then
TL_Delete(TL3);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],sDate[eBar],sTime[eBar],저점[1,1]);
//TL11 = TL_New(sDate[index-저점[2,2]],sTime[index-저점[2,2]],저점[2,1],sDate[1],sTime[1],저점[2,1]);
//Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],NumToStr(저점[1,1],2));
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
TL_SetColor(TL1,BLACK);
//TL_SetColor(TL11,BLACK);
TL_SetSize(TL1,3);
//TL_SetSize(TL11,2);
If 저점[2,1] < 저점[1,1] and 저점[2,1] < 저점[3,1] and 고점[2,1] > 고점[1,1] Then
{
sBar = Index - 고점[2,2];
eBar = Index - 고점[1,2];
}
}
}
mav = ma(C,20);
TL_Delete(TL13);
TL_Delete(TL14);
if 고점[1,2] > 저점[1,2] then{
TL13 = TL_New(sDate[index-고점[1,2]],sTime[index-고점[1,2]],고점[1,1],sDate,sTime,고점[1,1]);
TL_SetColor(TL13,BLUE);
TL_SetSize(TL13,4);
TL_SetExtRight(TL13,true);
}
if 고점[1,2] < 저점[1,2] then{
TL14 = TL_New(sDate[index-저점[1,2]],sTime[index-저점[1,2]],저점[1,1],sDate,sTime,저점[1,1]);
TL_SetColor(TL14,MAGENTA);
TL_SetSize(TL14,4);
TL_SetExtRight(TL14,true);
}
plot1(index-고점[1,2]);
plot2(index-저점[1,2]);
현재수평선이 고점이나 저점을찍고 2개봉째나오는데 고점이나저점을찍고1개봉쨰나오게할수있는지 부탁드립니다~~`미리감사드립니다
2017-10-13
163
글번호 113345