커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1649
글번호 230811
답변완료
수식
안녕하세요.
# 당일 장이 종료되면 종가봉 위에 하기 이름과 가격을 세로 배열로 Text표현
# 종가가 고저중심 아래면 종가봉 10틱 상단 / 고저중심 아래면 종가봉 10틱 하단
(예 : 시가 / 438.50)
1. 시가
2. 고가
3. 저가
4. 고저중심
감사합니다.
2021-06-30
1700
글번호 150428
답변완료
늘 고맙습니다
5분 차트서 어제 거래량의 합과
오늘 거래량의 합을 비교 하고 싶습니다
미리 감사드립니다
2021-06-30
1615
글번호 150427
답변완료
수식 수정 의뢰드립니다!
안녕하세요!
아래 만들어 주신 수식의 피보나치 숫자를 우측 라인 바깥쪽으로 이동하도록 수정을 부탁드립니다!
감사합니다!
input : per1(23.6),Per2(38.2),Per3(50),Per4(61.8),per5(76.4),Per6(100),Per7(123.6),Per8(138.2),Per9(150),Per10(161.8),Per11(200),
per12(-23.6),Per13(-38.2),Per14(-50),Per15(-61.8),per16(-76.4),Per17(-100),Per18(-123.6),Per19(-138.2),Per20(-150),Per21(-161.8),Per22(-200),Per23(0),Per24(0);
var : tx1(0),tx2(0),tx3(0),tx4(0),tx5(0),tx6(0),tx7(0),tx8(0),tx9(0),tx10(0),tx11(0),tx12(0),tx13(0),tx14(0),tx15(0),tx16(0),tx17(0),tx18(0),tx19(0),tx20(0),tx21(0),tx22(0);
var1 =DayLow+(DayHigh(1)-DayLow(1))*(Per1/100);
var2 =DayLow+(DayHigh(1)-DayLow(1))*(Per2/100);
var3 =DayLow+(DayHigh(1)-DayLow(1))*(Per3/100);
var4 =DayLow+(DayHigh(1)-DayLow(1))*(Per4/100);
var5 =DayLow+(DayHigh(1)-DayLow(1))*(Per5/100);
var6 =DayLow+(DayHigh(1)-DayLow(1))*(Per6/100);
var7 =DayLow+(DayHigh(1)-DayLow(1))*(Per7/100);
var8 =DayLow+(DayHigh(1)-DayLow(1))*(Per8/100);
var9 =DayLow+(DayHigh(1)-DayLow(1))*(Per9/100);
var10 =DayLow+(DayHigh(1)-DayLow(1))*(Per10/100);
var11 =DayLow+(DayHigh(1)-DayLow(1))*(Per11/100);
var12 =DayHigh+(DayHigh(1)-DayLow(1))*(Per12/100);
var13 =DayHigh+(DayHigh(1)-DayLow(1))*(Per13/100);
var14 =DayHigh+(DayHigh(1)-DayLow(1))*(Per14/100);
var15 =DayHigh+(DayHigh(1)-DayLow(1))*(Per15/100);
var16 =DayHigh+(DayHigh(1)-DayLow(1))*(Per16/100);
var17 =DayHigh+(DayHigh(1)-DayLow(1))*(Per17/100);
var18 =DayHigh+(DayHigh(1)-DayLow(1))*(Per18/100);
var19 =DayHigh+(DayHigh(1)-DayLow(1))*(Per19/100);
var20 =DayHigh+(DayHigh(1)-DayLow(1))*(Per20/100);
var21 =DayHigh+(DayHigh(1)-DayLow(1))*(Per21/100);
var22 =DayHigh+(DayHigh(1)-DayLow(1))*(Per22/100);
var23 =DayOpen;
var24 =(DayHigh+DayLow)/2;
Plot1(var1);
Plot2(var2);
Plot3(var3);
Plot4(var4);
Plot5(var5);
Plot6(var6);
Plot7(var7);
Plot8(var8);
Plot9(var9);
Plot10(var10);
Plot11(var11);
Plot12(var12);
Plot13(var13);
Plot14(var14);
Plot15(var15);
Plot16(var16);
Plot17(var17);
Plot18(var18);
Plot19(var19);
Plot20(var20);
Plot21(var21);
Plot22(var22);
Plot23(var23);
Plot24(var24);
Text_Delete(tx1);
Text_Delete(tx2);
Text_Delete(tx3);
Text_Delete(tx4);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
Text_Delete(tx8);
Text_Delete(tx9);
Text_Delete(tx10);
Text_Delete(tx11);
Text_Delete(tx12);
Text_Delete(tx13);
Text_Delete(tx14);
Text_Delete(tx15);
Text_Delete(tx16);
Text_Delete(tx17);
Text_Delete(tx18);
Text_Delete(tx19);
Text_Delete(tx20);
Text_Delete(tx21);
Text_Delete(tx22);
tx1 = Text_New(NextBarSdate,NextBarStime,var1,NumToStr(Per1,1)+"%");
tx2 = Text_New(NextBarSdate,NextBarStime,var2,NumToStr(Per2,1)+"%");
tx3 = Text_New(NextBarSdate,NextBarStime,var3,NumToStr(Per3,1)+"%");
tx4 = Text_New(NextBarSdate,NextBarStime,var4,NumToStr(Per4,1)+"%");
tx5 = Text_New(NextBarSdate,NextBarStime,var5,NumToStr(Per5,1)+"%");
tx6 = Text_New(NextBarSdate,NextBarStime,var6,NumToStr(Per6,1)+"%");
tx7 = Text_New(NextBarSdate,NextBarStime,var7,NumToStr(Per7,1)+"%");
tx8 = Text_New(NextBarSdate,NextBarStime,var8,NumToStr(Per8,1)+"%");
tx9 = Text_New(NextBarSdate,NextBarStime,var9,NumToStr(Per9,1)+"%");
tx10 = Text_New(NextBarSdate,NextBarStime,var10,NumToStr(Per10,1)+"%");
tx11 = Text_New(NextBarSdate,NextBarStime,var11,NumToStr(Per11,1)+"%");
tx12 = Text_New(NextBarSdate,NextBarStime,var12,NumToStr(Per12,1)+"%");
tx13 = Text_New(NextBarSdate,NextBarStime,var13,NumToStr(Per13,1)+"%");
tx14 = Text_New(NextBarSdate,NextBarStime,var14,NumToStr(Per14,1)+"%");
tx15 = Text_New(NextBarSdate,NextBarStime,var15,NumToStr(Per15,1)+"%");
tx16 = Text_New(NextBarSdate,NextBarStime,var16,NumToStr(Per16,1)+"%");
tx17 = Text_New(NextBarSdate,NextBarStime,var17,NumToStr(Per17,1)+"%");
tx18 = Text_New(NextBarSdate,NextBarStime,var18,NumToStr(Per18,1)+"%");
tx19 = Text_New(NextBarSdate,NextBarStime,var19,NumToStr(Per19,1)+"%");
tx20 = Text_New(NextBarSdate,NextBarStime,var20,NumToStr(Per20,1)+"%");
tx21 = Text_New(NextBarSdate,NextBarStime,var21,NumToStr(Per21,1)+"%");
tx22 = Text_New(NextBarSdate,NextBarStime,var22,NumToStr(Per22,1)+"%");
2021-06-30
1289
글번호 150426
답변완료
수식문의드립니다
매수:
붉은구름대로 전환한 이후 첫 음봉이 나온후 최근 5개봉중 최고점을 진입선으로 잡고(음봉포함),
음봉이후 최저가격을 저가선으로 잡습니다.(음봉포함)
청산선가격 = 진입선가격 + (진입선가격 - 저가)
atstop,atlimit를 이용해서 실시간진입 또는 청산합니다.
매도는 반대로 부탁드립니다.
2021-06-30
1433
글번호 150424
답변완료
시스템이 안되면 강조도 좋습니다.
늘 도움을 받고 있어 감사할 따름입니다.
아래의 수식은 30분봉의 8등분선입니다.
공부하는데 잘 사용하고있습니다.
이 수식을 활용하여 신호 시스템 .. 안되면 강조(색깔과 문양)으로 표시되도 좋습니다.
1. 매수
- 지금의 30분봉에서 저점대비 25% 지점을 이평5 선이 위로 통과할때 매수
- 이전 30분봉의 저점을 지금 30분봉의 이평 5선이 위로 통과할때 매수
- 이전 30분봉의 저점대비 25% 를 지금의 5선이 위로 통과할때 매수
- 이전 30분봉의 고점을 이평 5선이 위로 통과할때 매수
2. 매도
- 지금의 30분봉에서 저점대비 75% 지점을 이평5 선이 아래로 통과할때 매도
- 이전 30분봉의 고점을 지금 30분봉의 이평 5선이 아래로 통과할때 매도
- 이전 30분봉의 저점대비 75% 를 지금의 5선이 아래로 통과할때 매도
- 이전 30분봉의 저점을 이평 5선이 아래로 통과할때 매도
input : ntime(30);
var : S1(0),D1(0),TM(0),TF(0);
var : HH(0),LL(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;
TF = TM%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
hh = h;
ll = l;
}
if hh > 0 and h > hh Then
hh = h;
if ll > 0 and l < ll Then
ll = l;
Plot1(hh);
Plot2(ll+(hh-ll)*0.875);
Plot3(ll+(hh-ll)*0.75);
Plot4(ll+(hh-ll)*0.625);
Plot5(ll+(hh-ll)*0.50);
Plot6(ll+(hh-ll)*0.375);
Plot7(ll+(hh-ll)*0.25);
Plot8(ll+(hh-ll)*0.125);
Plot9(ll);
}
2021-06-30
1267
글번호 150423
답변완료
수식 수정부탁드립니다.
수고하십니다.
아래 지표식으로 변곡점으로부터 현재봉의 기울기를 구하고자 합니다.
그림에 표시한 것처럼 숫자에 따라서 예상치 못한 결과를 얻었습니다.
Period < SwingHigh를 찾는 대상 봉 갯수> 를 얼마만큼 주어야하는지요.
검토하시고 가능하시면 전화부탁드리겠습니다.
어제 상한가 식으로 통화했던 목포댁< 본필명 : 천사(주) > 입니다.
----아래 지표식 : 기울기
input : 기간(20), Left(3), Right(3), 봉갯수(9600), Case(1);
var : SH1(0),SH2(0),SL1(0),SL2(0),기울기(0),기준값(0);
var : SH_Bar1(0),SH_Bar2(0),SL_Bar1(0),SL_Bar2(0);
var : SH111(0),SH211(0),SL111(0),SL211(0),기울기11(0),기준값11(0);
var : SH_Bar111(0),SH_Bar211(0),SL_Bar111(0),SL_Bar211(0);
if Case == 1 Then 기준값 = Ma(C,기간);
SH_Bar1 = SwingHighBar(1,기준값,Left,Right,봉갯수);
SL_Bar1 = SwingLowBar(1,기준값,Left,Right,봉갯수);
SH1 = SwingHigh(1,기준값,Left,Right,봉갯수);
SL1 = SwingLow(1,기준값,Left,Right,봉갯수);
SH_Bar111 = SwingHighBar(1,기준값,1,1,봉갯수);
SL_Bar111 = SwingLowBar(1,기준값,1,1,봉갯수);
SH111 = SwingHigh(1,기준값,1,1,봉갯수);
SL111 = SwingLow(1,기준값,1,1,봉갯수);
/* 전저점과 전전저점, 전고점과 저전고점비교
SH_Bar2 = SwingHighBar(2,기준값,Left,Right,봉갯수);
SL_Bar2 = SwingLowBar(2,기준값,Left,Right,봉갯수);
SH2 = SwingHigh(2,기준값,Left,Right,봉갯수);
SL2 = SwingLow(2,기준값,Left,Right,봉갯수);*/
#전고/저에서 현재봉의 기울기
#전고기울기 = (기준값 - SH1)/SH1*100/SH_Bar1;
#전저기울기 = (기준값 - SL1)/SL1*100/SL_Bar1;
if SH_Bar1 > SL_Bar1 # 전고점보다 전저점이 더 가깝다. 그러므로 이평선 상승중
Then
{
# 기울기 = (기준값 - SL1)/SL1*100/SL_Bar1; #전저점으로부터 현재봉의 기울기 +
기울기 = (기준값 - SL1)/SL1*100; #전저점으로부터 현재봉의 기울기 +
기울기11 = (기준값 - SL111)/SL111*100; #전저점으로부터 현재봉의 기울기 +
Plot1(기울기,"기울기",RED);
# Plot2(기울기11,"기울기11",RED);
}
Else
{
# 기울기 = (기준값 - SH1)/SH1*100/SH_Bar1; #전고점으로부터 현재봉의 기울기 -
기울기 = (기준값 - SH1)/SH1*100; #전고점으로부터 현재봉의 기울기 -
기울기11 = (기준값 - SH111)/SH111*100; #전고점으로부터 현재봉의 기울기 -
Plot1(기울기,"기울기",BLUE);
# Plot2(기울기11,"기울기11",BLUE);
}
PlotBaseLine1(0,"기준선");
#MessageLog("SH1 %.f SH_Bar1 %.f SL1 %.f SL_Bar1 %.f",
# SH1, SH_Bar1, SL1, SL_Bar1);
/*
if 기준값[1] - 기준값 < 0 Then Plot2(기준값+200,"++",RED);
Else NoPlot(2);
if 기준값[1] - 기준값 > 0 Then Plot3(기준값+200,"--",CYAN);
Else NoPlot(3);
if 기준값[1] - 기준값 == 0 Then Plot4(기준값+200,"==",GREEN);
Else NoPlot(4);
*/
2021-06-30
1725
글번호 150422
답변완료
수식 부탁드립니다.
질문 01)
현재 일봉상 주가가
일봉 200봉전 60봉 최고거래량이 발생+거래대금 100억 이상 발생한 봉의
시가와 고가 사이에에 종가 형성하고 있는 종목을 검색하고 싶습니다.
질문 02)
현재 일봉상 주가가
일봉 10봉전부터 200봉전 사이에 60봉 최고거래량이 발생+거래대금 100억 이상 발생한 봉의
고가에 5% 접근한 종목을 검색하고 싶습니다.
(예를들어..
100봉전에 최고거래량이 발생했고..
현재봉의 종가가 100봉전 고가의 -5%부근에 위치한 종목을 검색하고 싶습니다.
만약 5봉전에 최고거래량이 발생했다면..
검색에서 제외하고 싶습니다.)
2021-06-30
1146
글번호 150421
답변완료
수식 문의드립니다~!
안녕하세요.
전일(preday)의 1)고점, 2)저점, 3) 중간선
전주(preweek)의 4)고점, 5) 저점, 6)중간선
전월(premonth)의 7)고점, 8)저점, 9)중간선
이렇게 아홉 개의 선을 만들 수 있는 수식 부탁드립니다.
감사합니다.
2021-06-30
1266
글번호 150413
답변완료
종목을 순서대로 배열하고 싶습니다
종목이 특정 조건을 만족할 경우에 검색이 되는 함수를 find(1) 로 확인할수 있다는것은 알겠습니다.
더불어 특정 파라미터를 계산후 이것이 큰(작은) 순서대로 위에서부터 표시하게 하는 방법을 알려주세요.
2021-06-29
1107
글번호 150412