커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1586
글번호 230811
답변완료
수식 문의
입력한 N봉 기간 동안
N전봉~현재봉까지의 종가를 누적하여 평균을 구합니다.
단, 저가를 갱신하면 누적을 다시 시작합니다.
즉, N봉의 저가 보다 낮은 봉이 발생하면
그 발생한 봉을 시작으로 현재봉까지 다시 누적하여 평균을 구합니다.
그 발생한 봉 보다 저가가 낮은 봉이 발생하면
다시 그 봉을 기준으로 현재봉까지 누적하여 평균을 구합니다.
항상 친절한 답변 감사드립니다
2023-01-13
899
글번호 165401
삼족오 님에 의해서 삭제되었습니다.
2023-01-13
16
글번호 165399
답변완료
수정 부탁드립니다
안녕하세요!
아래 수식은 지난번 만들어 주신것으로 현재 잘 활용하고 있습니다!
글자 색이 검정색이라 챠트가 좀 복잡하여서 제가 글자색을 지정하고 싶습니다!
글자색 수정을 할 수 있게 변수처리 부탁드립니다!
input : AA(2999.6),BB(301.5),CC(301.04),소숫점자리(2);
var1 = AA;
var2 = BB;
var3 = CC;
var4 = BB+(BB-AA);
var5 = BB+(BB-AA)/2;
var6 = CC+(BB-AA);
plot1(var1,"A값");
plot2(var2,"B값");
plot3(var3,"C값");
plot4(var4,"E값");
plot5(var5,"평균값");
plot6(var6,"N값");
if index == 1 then
{
value1 = Text_New_self(NextBarSdate,NextBarStime,var1," A값 : "+NumToStr(var1,소숫점자리));
value2 = Text_New_self(NextBarSdate,NextBarStime,var2," B값 : "+NumToStr(var2,소숫점자리));
value3 = Text_New_self(NextBarSdate,NextBarStime,var3," C값 : "+NumToStr(var3,소숫점자리));
value4 = Text_New_self(NextBarSdate,NextBarStime,var4," E값 : "+NumToStr(var4,소숫점자리));
value5 = Text_New_self(NextBarSdate,NextBarStime,var5," 평균값 : "+NumToStr(var5,소숫점자리));
value6 = Text_New_self(NextBarSdate,NextBarStime,var6," N값 : "+NumToStr(var6,소숫점자리));
Text_SetStyle(value1,0,2);
Text_SetStyle(value2,0,2);
Text_SetStyle(value3,0,2);
Text_SetStyle(value4,0,2);
Text_SetStyle(value5,0,2);
Text_SetStyle(value6,0,2);
}
Else
{
Text_SetLocation(value1,NextBarSdate,NextBarStime,var1);
Text_SetLocation(value2,NextBarSdate,NextBarStime,var2);
Text_SetLocation(value3,NextBarSdate,NextBarStime,var3);
Text_SetLocation(value4,NextBarSdate,NextBarStime,var4);
Text_SetLocation(value5,NextBarSdate,NextBarStime,var5);
Text_SetLocation(value6,NextBarSdate,NextBarStime,var6);
}
----------------------------------------------------------------
항상 부탁드린것 처럼 숫자값들을 챠트 우측외부로 이동하여 챠트와 겹치지 않게 수정을 부탁드립니다.
항상 도움 주심에 감사합니다!
input : 색상1(REd),색상2(BLACK),색상3(BLACK),색상4(MAGENTA);
input : 굵기1(1),굵기2(1),굵기3(1),굵기4(1);
var : cnt(0,Data1);
var : v1(0,Data1),v2(0,Data1),v3(0,Data1),v4(0,Data1);
var : tl1(0,Data1),tl2(0,Data1),tl3(0,Data1),tl4(0,Data1);
var : tx1(0,Data1),tx2(0,Data1),tx3(0,Data1),tx4(0,Data1);
var : tx5(0),tx6(0),tx7(0),tx8(0),tx9(0);
plot1(1.2);
plot2(2.5);
plot3(3.5);
plot4(4.85);
plot5(6.85);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
Text_Delete(tx8);
Text_Delete(tx9);
tx5 = Text_New(sdate,stime,1.25,"1.25");
tx6 = Text_New(sdate,stime,2.5,"2.5");
tx7 = Text_New(sdate,stime,3.5,"3.5");
tx8 = Text_New(sdate,stime,4.85,"4.85");
tx9 = Text_New(sdate,stime,6.85,"6.85");
2023-01-13
900
글번호 165397
답변완료
지표식요청
1.그림의 1번타점
20봉이내에 2프로상승 1만주이상 양봉(기준봉) 이 있고
19봉 이내에서 기준봉의 (고가/저가) 중간지점을 크로스다운한 음봉발생후
19봉이내에 기준봉의 고가를 돌파하는 돌파양봉발생시 매수
(돌파양봉은 1.5프로상승하고 거래량5000주 이상 조건만족)
2.그림의 2번타점
30봉이내에 2프로상승 1만주이상 양봉(기준봉) 이 있고
29봉 이내에서 기준봉의 (고가/저가) 중간지점을 크로스다운한 음봉발생후
29봉이내에 기준봉의 고가를 돌파하는 돌파양봉발생
(돌파양봉은 1.5프로상승하고 거래량5000주 이상 조건만족)
=======================================================
여기까지는 1번과 동일
20봉이내에서 기준봉의 고가를 크로스다운 음봉발생시 매수
위 두조건 지표식으로 꼭 부탁드립니다.
수고하십시오.
2023-01-13
1247
글번호 165396
삼족오 님에 의해서 삭제되었습니다.
2023-01-13
6
글번호 165395
답변완료
이격도 문의
ez전략시스템에서 이격도로 전략을 만들고 있는데
제가 잘못이해했는지 97년부터 해도 매수 매도가 안걸리는걸로 나오네요
20일 이평 기준 이격도가 89를 상향돌파하면 매수
20일 이평 기준 이격도가 103을 하향돌파하면 매도
하려고 아래 그림과 같이 수치를 집어넣었는데
안잡히네요
분명 이격 89아래로 간적이 많이 있거든요
2023-01-13
1392
글번호 165394
캣피쉬 님에 의해서 삭제되었습니다.
2023-01-13
3
글번호 165390
답변완료
검색
항상 감사합니다.
색상,크기선택 부탁드립니다.
가격표시도 부탁드립니다.
1. 골든
input : Short(5),Long(20);
Var : Tx1(0);
Value1 = ma(c, Short);
Value2 = ma(c, Long);
if CrossUp(Value1,Value2) Then
{
TX1 = Text_new(sDate,sTime,H,"골든"+NewLine);
Text_SetStyle(Tx1,2,1);
Plot1(value1,"Golden Cross");
}
Else
{
NoPlot(1);
}
2. 데드
input : Short(5),Long(20);
Var : Tx1(0);
Value1 = ma(c, Short);
Value2 = ma(c, Long);
if CrossDown(Value1,Value2) Then
{
TX1 = Text_new(sDate,sTime,L,NewLine+"데드");
Text_SetStyle(Tx1,2,0);
Plot1(value1,"Dead Cross");
}
else
{
NoPlot(1);
}
3. 스윙 하이
Input: Strength(3);
Var: Tx1(0);
If SwingHigh(1, High, Strength, Strength, Strength*2+1) <> -1 Then
{
TX1 = Text_new(sDate,sTime,High[Strength],"S.W-H"+NewLine);
Text_SetStyle(Tx1,2,1);;
Plot1(High[Strength],"SwingHigh");
}
4. 스윙 로우
Inputs: Strength(3);
Var: Tx1(0);
If SwingLow(1,Low, Strength, Strength, Strength*2+1) <> -1 Then
{
TX1 = Text_new(sDate,sTime,Low[Strength],NewLine+"S.W-L");
Text_SetStyle(Tx1,2,0);;
Plot1(Low[Strength],"SwingLow");
}
2023-01-13
790
글번호 165385
답변완료
추세선 크기 세로선
input : Period(17),선두께(2),바닥상1(2),바닥하1(1),봉상(1),봉하(2),pt(0.2);
Var:상승색(Red), 하락색(Blue);
Var:j(0),T(0),txx(0),txxx(0);
Var: date11(0),date12(0),time11(0),time12(0),TL1(0),TL(0),
date21(0),date22(0),time21(0),time22(0),tl8(0),
date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0),tl4(0),tl9(0);
Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0);
Array:r[7](0),fr[7](0),TL2[7](0),TL3[7](0),TX2[7](0),TX3[7](0);
Plot1(value12);
For j = 0 To 19
{
HiBar[j] = HiBar[j] + 1;
LoBar[j] = LoBar[j] + 1;
}
if crossup(c,highest(H,Period)[1]) Then
T = 1;
if CrossDown(c,Lowest(L,Period)[1]) Then
T = -1;
If T == -1 Then
{
If T[1] != -1 Then
{
For j = 18 DownTo 0
{
LoVal[j+1] = LoVal[j];
LoBar[j+1] = LoBar[j];
}
LoVal[0] = L;
LoBar[0] = 0;
date11 = date[HiBar[0]];
time11 = stime[HiBar[0]];
Value11 = HiVal[0];
date12 = date[LoBar[0]];
time12 = stime[LoBar[0]];
Value12 = LoVal[0];
TL_Delete(tl);
TL = TL_New_Self(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen);
TL1 = TL_New_Self(date11,time11,Value11,date12,time12,Value12);
TL_SetColor(TL1,하락색);
Txx = Text_New_Self(date11,time11,Value11+PriceScale*0,"●");
Text_SetColor(Txx,Blue);
Text_SetStyle(Txx,2,2);
Text_SetSize(txx,10);
if hival[0] <= hival[1]+PriceScale* 봉상 and hival[0] >= hival[1]-PriceScale*봉하 Then
{
Txx =Text_New_Self(date11,time11,Value11+PriceScale*1,"●");
Text_SetColor(Txx,Cyan);
Text_SetStyle(Txx,2,2);
Text_SetSize(txx,20);
}
date21 = date[HiBar[0]];
time21 = stime[HiBar[0]];
date22 = date[0];
time22 = stime[0];
for j = 0 to 6
{
fr[j] = LoVal[1] + ((HiVal[0] - LoVal[1]) * r[j]);
}
Text_SetSize(tx,25);
Text_SetColor(Tx,Red);
Text_SetStyle(tx,1,1);
if abs(value12[1]-value11[1]) < 0.9 Then
Text_Delete(tx);
tx = Text_New_Self(sDate,stime,value12,NumToStr(value12-value11,2));
Text_SetColor(Tx,Blue);
Text_SetStyle(tx,1,0);
Text_SetSize(tx,30);
Text_SetBold(tx,1);
}
If LoVal[0] > L Then
{
LoVal[0] = L;
LoBar[0] = 0;
date12 = date[LoBar[0]];
time12 = stime[LoBar[0]];
Value12 = LoVal[0];
TL_SetEnd(TL1, date12,time12,Value12);
date22 = date[0];
time22 = stime[0];
Text_SetString(tx,NumToStr(value12-value11,2));
Text_SetLocation(tx,sDate,sTime,value12);
}
}
If T == 1 Then
{
If T[1] != 1 Then
{
For j = 18 DownTo 0
{
HiVal[j+1] = HiVal[j];
HiBar[j+1] = HiBar[j];
}
HiVal[0] = H;
HiBar[0] = 0;
date11 = date[LoBar[0]];
time11 = stime[LoBar[0]];
Value11 = LoVal[0];
date12 = date[HiBar[0]];
time12 = stime[HiBar[0]];
Value12 = HiVal[0];
TL_Delete(tl);
TL = TL_New_Self(sdate,stime,Value12,NextBarSdate,NextBarStime,NextBarOpen);
TL1 = TL_New_Self(date11,time11,Value11,date12,time12,Value12);
TL_SetColor(TL1,상승색);
if LoVal[2] > 0 and max(LoVal[0],LoVal[1],LoVal[2]) <= min(LoVal[0],LoVal[1],LoVal[2])+pt Then
{
txx = Text_New_Self(sDate[LoBar[0]],sTime[LoBar[0]],Loval[0],"●");
Text_SetColor(txx,Lime);
Text_SetStyle(Txx,2,2);
Text_SetSize(txx,30);
}
Condition1 = False;
if Condition1 == False and LoVal[0] <= Loval[1]+PriceScale*바닥상1 and LoVal[0] >= Loval[1]-PriceScale*바닥하1 Then
{
Condition1 = true;
Txx =Text_New_Self(date11,time11,Value11-PriceScale*0,"●");
Text_SetColor(Txx,Magenta);
Text_SetStyle(Txx,2,2);
Text_SetSize(txx,20);
}
Txx = Text_New_Self(date11,time11,Value11-PriceScale*0,"●");
Text_SetColor(Txx,Red);
Text_SetStyle(Txx,2,2);
Text_SetSize(txx,10);
date31 = date[LoBar[0]];
time31 = stime[LoBar[0]];
date32 = date[0];
time32 = stime[0];
for j = 0 to 5
{
fr[j] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[j]);
}
Text_SetSize(tx,25);
Text_SetColor(Tx,Blue);
Text_SetStyle(tx,1,0);
if abs(value12[1]-value11[1]) < 0.55 Then
Text_Delete(tx);
tx = Text_New_Self(sDate,stime,value12,NumToStr(value12-value11,2));
Text_SetColor(Tx,Red);
Text_SetStyle(tx,1,1);
Text_SetSize(tx,30);
Text_SetBold(tx,1);
}
If HiVal[0] < H Then
{
HiVal[0] = H;
HiBar[0] = 0;
date12 = date[HiBar[0]];
time12 = stime[HiBar[0]];
Value12 = HiVal[0];
TL_SetEnd(TL1, date12,time12,Value12);
date32 = date[0];
time32 = stime[0];
Text_SetString(tx,NumToStr(value12-value11,2));
Text_SetLocation(tx,sDate,sTime,value12);
}
}
Text_SetColor(Txxx,Black);
Text_SetSize(txxx,30);
TL_SetSize(TL1,선두께);
1.추세선 음선의 크기가 0.55p 보다 클때 양전환되면 세로선 추가.
0.55p 보다 작거나 양선은 무관.
2.음선의 크기가 0.55p에 도달하면, 음추세선 상단 시작점에 동그라미 표시 추가. 양전환시 동그라미는 삭제(세로선이 추가됨). 감사합니다
2023-01-13
823
글번호 165383