커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7245
글번호 230811
답변완료
수식수정부탁드립니다
###,아래수식에서 질문입니다
1,수식적용시 피봇 등분선 가격표시로 출력된 r[1]값에서 r[5]값까지를 호가값은 삭제하고
아래와같이 비율 표시로만 수정하여 표시하고 싶습니다,
ㅡ,상승파통시 파동저점에서부터(23.6/38.2/50/61.8/76.4)순서로 수치만표시(소수점1자리만)
ㅡ,하락파동시 파동고점에서부터(23.6/38.2/50/61.8/76.4)순서로 수치만 표시되게 부탁
드립니다 .
2,피봇 등분선 비율표시중 r[3]선만 굵기를 현재보다 한단계 굵게 하고싶습니다.
Input:ShortPeriod(5),LongPeriod(20),선두께(2),상승색(CYAN), 하락색(YELLOW);
Var:j(0),ma1(0),ma2(0);
Var: date11(0),date12(0),time11(0),time12(0),TL1(0),
date21(0),date22(0),time21(0),time22(0),
date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0);
Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0),ZZ[20](0);
Array:r[7](0),fr[7](0),TL2[7](0),TL3[7](0);
r[0] = 0;
r[1] = 0.236;
r[2] = 0.382;
r[3] = 0.50;
r[4] = 0.618;
r[5] = 0.764;
r[6] = 1;
For j = 0 To 19
{
HiBar[j] = HiBar[j] + 1;
LoBar[j] = LoBar[j] + 1;
}
ma1 = ma(C,ShortPeriod);
ma2 = ma(C,LongPeriod);
If ma1 < ma2 Then
{
If ma1[1] >= ma2[1] Then
{
For j = 18 DownTo 0
{
LoVal[j+1] = LoVal[j];
LoBar[j+1] = LoBar[j];
ZZ[j+1] = ZZ[j];
}
LoVal[0] = L;
LoBar[0] = 0;
ZZ[0] = L;
date11 = date[HiBar[0]];
time11 = stime[HiBar[0]];
Value11 = HiVal[0];
date12 = date[LoBar[0]];
time12 = stime[LoBar[0]];
Value12 = LoVal[0];
TL1 = TL_New(date11,time11,Value11,date12,time12,Value12);
TL_SetColor(TL1,상승색);
tx = Text_New(date11,time11,Value11,NumToStr(value11,2)+NewLine+"틱수:"+NumToStr(abs(value11-value11[1])/PriceScale,0));
Text_SetStyle(tx,2,1);
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]);
TL2[j] = TL_New(date21,time21,fr[j],date22,time22,fr[j]);
TL_SetColor(TL2[j],MAGENTA);
tx1 = Text_New(date22,time22,fr[j], NumToStr(fr[j],2));
Text_SetStyle(tx1,0,0);
}
}
Else If LoVal[0] > L Then
{
LoVal[0] = L;
LoBar[0] = 0;
ZZ[0] = L;
date12 = date[LoBar[0]];
time12 = stime[LoBar[0]];
Value12 = LoVal[0];
TL_SetEnd(TL1, date12,time12,Value12);
date22 = date[0];
time22 = stime[0];
for j = 0 to 6
{
TL_SetEnd(TL2[j],date22,time22,fr[j]);
}
}
}
Else If ma1 > ma2 Then
{
If ma1[1] <= ma2[1] Then
{
For j = 18 DownTo 0
{
HiVal[j+1] = HiVal[j];
HiBar[j+1] = HiBar[j];
ZZ[j+1] = ZZ[j];
}
HiVal[0] = H;
HiBar[0] = 0;
ZZ[0] = H;
date11 = date[LoBar[0]];
time11 = stime[LoBar[0]];
Value11 = LoVal[0];
date12 = date[HiBar[0]];
time12 = stime[HiBar[0]];
Value12 = HiVal[0];
TL1 = TL_New(date11,time11,Value11,date12,time12,Value12);
TL_SetColor(TL1,하락색);
tx = Text_New(date11,time11,Value11,NumToStr(value11,2)+NewLine+"틱수:"+NumToStr(abs(value11-value11[1])/PriceScale,0));
Text_SetStyle(tx,2,0);
date31 = date[LoBar[0]];
time31 = stime[LoBar[0]];
date32 = date[0];
time32 = stime[0];
for j = 0 to 6
{
fr[j] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[j]);
TL3[j] = TL_New(date31,time31,fr[j],date32,time32,fr[j]);
TL_SetColor(TL3[j],blue);
tx1 = Text_New(date22,time22,fr[j],NumToStr(fr[j],2));
Text_SetStyle(tx1,0,0);
}
}
Else If HiVal[0] < H Then
{
HiVal[0] = H;
HiBar[0] = 0;
ZZ[0] = H;
date12 = date[HiBar[0]];
time12 = stime[HiBar[0]];
Value12 = HiVal[0];
TL_SetEnd(TL1, date12,time12,Value12);
date32 = date[0];
time32 = stime[0];
for j = 0 to 6
{
TL_SetEnd(TL3[j],date32,time32,fr[j]);
}
}
}
TL_SetSize(TL1,선두께);
###$,언제나 늘 고맙습니다.
2018-04-27
268
글번호 118522
답변완료
지표 함수 기능 버그인지 문의 드립니다.
Upvol
DownVol
지표중에 이 2개 함수문의 드립니다..
전 2개 함수가 체결량이 매수였으면 upvol 매도였으면 downvol 인줄 알고 사용하고 있었는데요.
이 함수가 차트에서 오류인 모습을 보고 문의 드립니다.
한진칼 차트에서 빨간박스에서 9시8분24초에 확인한 시간이고요.
주황박스에서 채결량이 2876 매수였음을 확인했습니다.
그런데 함수를 이용하여 확인한 체결량이 매도 채결로 확인이 되네요.
체결창을 확인하면 9시7분 9초부터 24700원 가격에 채결되는 모습이
매수도 있고 매도 있는 모습입니다...
함수 기능이 체결창의 채결량을 표시해주는 기능인것인지..
아니면 단순하게 체결가가 상승/하락시 채결량을 표시하는것인지...
채결가가 상승하면서 나온 거래량이 upvol
하락하면서 나온 거래량이 downvol
같은 가격으로 채결가가 더 나오면 이전에 상승했으면 매수채결량 하락했었으면 매도 채결량을
표시한것인지 알고 싶습니다....
보여드린 한진칼 차트는
같은가격에 매수도 있었고 매도도 있었고 하는 모습이거든요...
그런데 이전에 하락했던 채결가 거래량을 따라가는 모습이여서 문의 드립니다.
그렇다면 분봉에서 upvol - downvol 이 순매수채결량이 아니라는거지요?
2018-04-27
330
글번호 118518
답변완료
수식 부탁드립니다
수식 작성에 많은 도움주셔서
매번 감사드립니다
전략은 이렇습니다.
매수조건.ㅡ 1시간봉 챠트에서
하루의 마지막봉이 양봉이면 종가매수
매도조건. ㅡ 익일 시초가매도.
2018-04-27
251
글번호 118517
답변완료
수식변경부탁드립니다==================
//아래 조건이되면 소리가 계속 나게되있는데 예를들어 1분봉적용한경우 소리가 1분에 한번
//만 나게할수는없나요?
//수고하세요
INPUTS: LENGTH1(5),LENGTH2(20),LENGTH3(60);
VARS: TEMA1(0),TEMA2(0),TEMA3(0);
TEMA1 = (3 * Ema(c,LENGTH1)) - (3 * Ema(Ema(c,LENGTH1),LENGTH1)) +
(Ema(Ema(Ema(c,LENGTH1),LENGTH1),LENGTH1));
TEMA2 = (3 * Ema(c,LENGTH2)) - (3 * Ema(Ema(c,LENGTH2),LENGTH2)) +
(Ema(Ema(Ema(c,LENGTH2),LENGTH2),LENGTH2));
TEMA3 = (3 * Ema(c,LENGTH3)) - (3 * Ema(Ema(c,LENGTH3),LENGTH3)) +
(Ema(Ema(Ema(c,LENGTH3),LENGTH3),LENGTH3));
PLOT1(TEMA1,"TEMA1");
PLOT2(TEMA2,"TEMA2");
PLOT3(TEMA3,"TEMA3");
if tema3 > tema3[1] then {
plot4(tema3,"상승");
PlaySound("C:₩Users₩Administrator₩Desktop₩sound₩dn3.wav");
}
2018-04-27
312
글번호 118516
답변완료
문의드립니다
1.
항셍종목 기준으로 오전 10시 15분 부터 17시 까지만 신호 나오게 수식 부탁드립니다
17시에는 그전에 나온 진입신호 있으면 청산 신호 나오게 부탁합니다
2.
진입신호후에 수익일때 10틱 단위로 노란색으로 틱수 표시 되고
손실중일때는 10틱 단위로 파란색으로 틱수 표시되게 수식 부탁드립니다
아래 두 지표 오실래이터 지표로 수정 부탁드립니다
3
Input : shortPeriod(12), longPeriod(26), Period(9),af(0.02),maxaf(0.2);
Var : MACDV(0) , MACDS(0), value(0) ;
MACDV = MACD(shortPeriod, longPeriod);
MACDS = ema(MACDV,Period);
value = sar(af,maxaf);
var1 = iff(MACDv>macds,iff(value<c,2,1),iff(value>c,-2,1));
plot1(var1);
4
input : g(100),r(5),s(100);
var1 = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5,r),s) * 100/
(0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s));
if var1 >= var1[1] Then
value1 = var1;
if var1 <= var1[1] Then
value2 = var1;
plot1(value1);
plot2(value2);
plot3(0);
2018-04-27
255
글번호 118515
답변완료
시스템식부탁드림니다.
참조식이 rsi매도일때 본주매수매도식부탁드림니다.
감사합니다
2018-04-27
240
글번호 118514
qormswhd 님에 의해서 삭제되었습니다.
2018-04-27
0
글번호 118513
답변완료
57598 재문의드립니다
안녕하세요
몇번 반복해서 돌려봐는데도 검색결과는 제로입니다.그리하여 제가 한부분 한부분씩 나눠서 실행해봤습니다 결과는 var1 <= 15 요부분에서 아에 반응 안합니다 무슨무제인지 거르쳐주십시요 감사합니다
2018-04-27
256
글번호 118512
답변완료
지표
트레이딩뷰 소스인데
이거 만들 수 있나요?
감사합니다.
study("CM_Williams_Vix_Fix", overlay=false)
pd = input(22, title="LookBack Period Standard Deviation High")
bbl = input(20, title="Bolinger Band Length")
mult = input(2.0 , minval=1, maxval=5, title="Bollinger Band Standard Devaition Up")
lb = input(50 , title="Look Back Period Percentile High")
ph = input(.85, title="Highest Percentile - 0.90=90%, 0.95=95%, 0.99=99%")
pl = input(1.01, title="Lowest Percentile - 1.10=90%, 1.05=95%, 1.01=99%")
hp = input(false, title="Show High Range - Based on Percentile and LookBack Period?")
sd = input(false, title="Show Standard Deviation Line?")
wvf = ((highest(close, pd)-low)/(highest(close, pd)))*100
sDev = mult * stdev(wvf, bbl)
midLine = sma(wvf, bbl)
lowerBand = midLine - sDev
upperBand = midLine + sDev
rangeHigh = (highest(wvf, lb)) * ph
rangeLow = (lowest(wvf, lb)) * pl
col = wvf >= upperBand or wvf >= rangeHigh ? lime : gray
plot(hp and rangeHigh ? rangeHigh : na, title="Range High Percentile", style=line, linewidth=4, color=orange)
plot(hp and rangeLow ? rangeLow : na, title="Range High Percentile", style=line, linewidth=4, color=orange)
plot(wvf, title="Williams Vix Fix", style=histogram, linewidth = 4, color=col)
plot(sd and upperBand ? upperBand : na, title="Upper Band", style=line, linewidth = 3, color=aqua)
2018-04-26
392
글번호 118510