커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7304
글번호 230811
답변완료
지표 표시
안녕하세요?
yes language 질문드립니다. 지표/시스템 코딩을 하려고 하는데,
1. "지표속성" 에서 "차트표시" 텝에 "수평" 을 선택할수 있는데, 이것을 코딩으로 입력할수 있는 방법이 있나요? 예를들어 이평선 5 가 현시점에 나오는게 아니라 현시점 보다 5일전에 표시되게 하려면 "수평" -4를 입력해야하는 것으로 알고 있는데, 아예 코딩할때 입력할수 있는 방법이 있는지요?
2. 만약 수평0인 MA5 와 수평-19인 (현시점에서 20캔들 뒤에 표시되는) MA5 의 골드/데드 시스템매매 코딩은 어떻게 해야하나요?
감사합니다.
2017-07-30
156
글번호 111660
답변완료
순서정렬 요청
* 항상 많은 도움 고맙습니다.
* 순서좀 정해 주십시요.(5분봉 차트 사용)
Inputs: MAP1(5),MAP2(10),MAP3(15),MAP4(20),MAP5(30);
var1 = ma(C,MAP1);
var2 = ma(C,MAP2);
var3 = ma(C,MAP3);
var4 = ma(C,MAP4);
var5 = ma(C,MAP5);
if var1>var2 and var2>var3 and var3>var4 and var4>var5 Then buy();
이 경우 순서대로 발생 할 경우만 매수 하는 로직좀 부탁 합니다.
즉 현재 그대로 쓰면 var5 보다 크면 걍 매수 합니다.(한봉이 쭉 올라가면 매수→손절 됨 ㅋㅋ)
저의 의도는 가격이 var1 보다 커지고 다음봉 이후에
var2 보다 커지고 다음봉 이후에
var3 보다 커지고 다음봉 이후에
var4 보다 커지고 다음봉 이후에
var5 보다 크면 매수 입니다.
즉 순서대로 실적이 꼭 발생한 이후 매수 할려고 합니다.
(2단계는인정 즉 한봉이 var1 에서 var3는 가능 하지만 var4는 안됨)
이때 중간 과정중 var1 보다 떨어 지면 지금까지 무효 처리
그시간이후 부터 다시 처음 순서 대로 var1 ~ 올라가서 매수 입니다.
* 더운날씨에 항상 고맙습니다. ^.^
2017-07-31
179
글번호 111659
답변완료
도움을 요청합니다.
체결강도를 아래와 같이 만들어보았습니다.
1. 여기에 추가로 이평선 1개를 추가하고 싶습니다.
2. 체결강도 컬러를 red색은 조금더 어두운 검붉은색, blue 색도 어 어두운 곤색으로 조정하려하는데 어떻게 해야하는지요?
미리 감사드립니다.
====================================
if bdate != bdate[1] Then{
var1 = 0;
var2 = 0;
}
var1 = var1+Upvol;
var2 = var2+DownVol;
var3 = var1/var2*100;
if var3 >= 100 Then
plot1(var3,"체결강도",RED);
Else
plot1(var3,"체결강도",blue);
PlotBaseLine1(100);
PlotBaseLine2(120);
PlotBaseLine3(130);
PlotBaseLine4(80);
PlotBaseLine5(70);
2017-07-30
195
글번호 111658
답변완료
문의드립니다
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);
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);
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]);
Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],NumToStr(고점[1,1],2));
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
TL_SetColor(TL1,WHITE);
TL_SetSize(TL1,1);
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);
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]);
Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],NumToStr(저점[1,1],2));
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
TL_SetColor(TL1,WHITE);
TL_SetSize(TL1,1);
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); 당일제일큰선에피보나치100.23.6,38.2,50,61.8,76.4,프로 점선으로 나오게부탁드립니다 기존큰선에 표시가되었다면 더큰선이나오면 이동하여더큰선으로 표시가되게끔 부탁드립니다 ~~항상감사드립니다
2017-07-30
177
글번호 111657
답변완료
문의 드립니다.
안녕하세요
더운 날씨에 건강 하시기 바라며
첨부한 그림과 같이 특정한 날짜의 일봉에서 고점, 저점, 중심, 25% 지점과 75% 지점에서 적당한 각도로 상방과 하방으로 사선을 긋고 싶습니다. 그리고 그날 일봉의 고점에서 그날 폭의 25%, 50% 75% 100% 위 지점에서 역시 마찬가지로 상하 사선, 일봉의 저점에서 아래쪽으로 25%,50%,75%,100% 지점에서 상하 사선을 그리고 싶습니다.
기울기 각도와 특정일 날짜는 외부변수로 조절이 가능하면 좋겠습니다.
미리 감사드리며 항상 행복하시고 건강하십시요
2017-07-30
269
글번호 111656
답변완료
행복; 시스템식 작성 바랍니다
한국의 금융산업 발전을 위해 불철주야 애쓰시는 귀하의 노고를 높이 평가합니다
시스템식 관련입니다
<< 시스템식 1 >>
- 주기; 일봉
input : 총투자금(천만원);
- if marketingposition == 0 and (조건A) 이면 총투자금의 20%를 종가에 1차 매수
- if marketingposition == 1 and (1차 매수 후 2차 매수전) and (손실금액이 30만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건B) 이면 총투자금의 19%를 종가에 2차 매수
- if marketingposition == 1 and (2차 매수 후 3차 매수전) and (손실금액이 40만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건C) 이면 총투자금의 18%를 종가에 3차 매수
- if marketingposition == 1 and (3차 매수 후 4차 매수전) and (손실금액이 50만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건D) 이면 총투자금의 17%를 종가에 4차 매수
- if marketingposition == 1 and (4차 매수 후 5차 매수전) and (손실금액이 60만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건E) 이면 총투자금의 16%를 종가에 5차 매수
- if marketingposition == 1 and (5차 매수 후) and (조건E) 이면 종가에 전량 매도
<< 시스템식 2 >>
- 주기; 1분봉
- 매매형태; day trading( 당일 9시 이후에 매수하여 당일 15시 20분 이전에 전량 매도 )
input : 총투자금(천만원);
- if marketingposition == 0 and (조건A) 이면 총투자금의 20%를 종가에 1차 매수
- if marketingposition == 1 and (1차 매수 후 2차 매수전) and (손실금액이 30만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건B) 이면 총투자금의 19%를 종가에 2차 매수
- if marketingposition == 1 and (2차 매수 후 3차 매수전) and (손실금액이 40만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건C) 이면 총투자금의 18%를 종가에 3차 매수
- if marketingposition == 1 and (3차 매수 후 4차 매수전) and (손실금액이 50만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건D) 이면 총투자금의 17%를 종가에 4차 매수
- if marketingposition == 1 and (4차 매수 후 5차 매수전) and (손실금액이 60만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건E) 이면 총투자금의 16%를 종가에 5차 매수
- if marketingposition == 1 and (5차 매수 후) and (조건E) 이면 종가에 전량 매도
- 15시20분에 전량 매도
<< 시스템식 3 >>
- 주기; 30분봉
- 매매형태; day trading 아님( 매수 후 조건이 맞으면 날자 제한 없이 추가 매수 후 여러날에 걸쳐서 보유 후 전량 매도)
input : 총투자금(천만원);
- if marketingposition == 0 and (조건A) 이면 총투자금의 20%를 종가에 1차 매수
- if marketingposition == 1 and (1차 매수 후 2차 매수전) and (손실금액이 30만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건B) 이면 총투자금의 19%를 종가에 2차 매수
- if marketingposition == 1 and (2차 매수 후 3차 매수전) and (손실금액이 40만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건C) 이면 총투자금의 18%를 종가에 3차 매수
- if marketingposition == 1 and (3차 매수 후 4차 매수전) and (손실금액이 50만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건D) 이면 총투자금의 17%를 종가에 4차 매수
- if marketingposition == 1 and (4차 매수 후 5차 매수전) and (손실금액이 60만원이상) 이면 종가에 전량 매도
- if marketingposition == 1 and (조건E) 이면 총투자금의 16%를 종가에 5차 매수
- if marketingposition == 1 and (5차 매수 후) and (조건E) 이면 종가에 전량 매도
시스템식 작성바랍니다
수고하십시요^^
2017-07-30
182
글번호 111655
답변완료
재질문
저 아래다가 올렸는데 수식이 원하는데로 구현이 되지가 않네요...
다시 질문드립니다.
1분봉차트의 Data(1) 과 Data(2)의 종가들에 대해서
각각 10:15분 첫봉 시가를 100으로 하여 당일 17:00분까지 종가가격들과 10:15분의 시가 대비
변동률 - C/0(첫봉)*100 - 을 구하고
두 값(Data(1), data(2)을 뺀 값을 지표를 만들고 싶습니다.
10시15분과 17시외에는 지표가 100으로 표시되게 하고 싶습니다.
2017-07-29
145
글번호 111654
답변완료
검색식을만들려하는데 도움부탁드립니다
현재 봉이 양봉이고 이전 3개월간의 양봉의 종가들보다 높은 경우를 검색하고싶습니다.
즉 최고가가아니라 양봉의 종가만비교해서 현재 가장높은 걸 검색하고싶은데
잘안되서 도움 요청드립니다
감사합니다
2017-07-29
161
글번호 111653
답변완료
틱차트 지표 만들기
60틱 차트에서
120틱 종가를 잇는 선을 구현할수 있을까요?
2017-07-29
289
글번호 111652