커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3566
글번호 230811
답변완료
문의드립니다
var : xClose(0),xOpen(0),xHigh(0),xLow(0);
if Bdate != Bdate[1] Then
{
xOpen = open;
xClose = (O+H+L+C+c)/5;
xHigh = MaxList( high, xOpen, xClose);
xLow = MinList( low, xOpen,xClose);
}
else
{
xClose = (O+H+L+C+c)/5;
xOpen = (xOpen [1] + xClose [1])/2 ;
xHigh = MaxList(High, xOpen, xClose) ;
xLow = MinList(Low, xOpen, xClose) ;
}
if XClose > Xopen Then
Plot1(xclose, "1", Red);
Else
Plot1(xclose, "1", Blue);
------------------------------
라인 색상이 블루로 바뀌면 위에 블루색 화살표,
라인 색상이 레드로 바뀌면 아래에 레드색 화살표가 나오게 부탁합니다
tx = Text_New(sDate,sTime,up,"▲");
Text_SetStyle(tx,2,0);
Text_SetColor(tx,Red);
2025-03-30
465
글번호 189695
답변완료
수식 문의 드립니다
안녕하세요. 항상 수고 하십니다.
아래차트는 그림의 화살표시된 것 처럼 보조차트란에 설정되어
제가 임의로 차트 색상을 수정하거나
하나의 분봉 차트에 아래 지표를 두 개이상 추가해서
사용하기가 불편한바(지표 두개 이상 추가시 지표 색 또는 굵기 구별이 안됨)
동그라미 친 것처럼 주차트에서 사용하도록 지표를 수정해 주세요.
input : 분(60),n(10);
var : S1(0),D1(0),TM(0),TF(0),HH(0),LL(0),cnt(0),hcnt(0),lcnt(0),bar(0);
Array : HTL[100](0),HTLV[100](0),LTL[100](0),LTLV[100](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
HH = H;
LL = L;
Condition1 = true;
Condition2 = true;
bar = 0;
hcnt = 0;
lcnt = 0;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%분;
if (Bdate == Bdate[1] and 분 > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and 분 > 1 and TM >= TM[1]+분) or
(Bdate == Bdate[1] and 분 == 1 and TM > TM[1]) Then
{
bar = bar+1;
Condition1 = False;
Condition2 = False;
Condition3 = true;
if Condition1[1] == true Then
{
HTLV[hcnt] = Open;
HTL[hcnt] = TL_New(Sdate,Stime,HTLV[hcnt],NextBarSdate,NextBarStime,HTLV[hcnt]);
TL_SetColor(HTL[hcnt],Red);
hcnt = Hcnt+1;
}
if Condition2[1] == true Then
{
LTLV[lcnt] = O;
LTL[lcnt] = TL_New(Sdate,Stime,LTLV[lcnt],NextBarSdate,NextBarStime,LTLV[lcnt]);
TL_SetColor(LTL[hcnt],Blue);
lcnt = lcnt+1;
}
}
if H > HH then
{
HH = H;
Condition1 = true;
}
if L < LL then
{
LL = L;
Condition2 = true;
}
if bar >= 1 Then
{
for cnt = 0 to Hcnt
{
TL_SetEnd(HTL[cnt],NextBarSdate,NextBarStime,HTLV[cnt]);
}
for cnt = 0 to Lcnt
{
TL_SetEnd(LTL[cnt],NextBarSdate,NextBarStime,LTLV[cnt]);
}
if Hcnt >= n Then
TL_Delete(HTL[n]);
if Lcnt >= n Then
TL_Delete(LTL[n]);
}
}
2025-03-30
475
글번호 189694
답변완료
수식좀 요청 드립니다.
항상 많은 도움에 고맙습니다.
아래 수식에서 고점 저점 중간선 2등분인데
이것을 4등분선 으로 수정 좀 요청 드림니다. (그림1)
(저가 , 25% 50% 75% 고가)
## 아래 수식
input : n(20);
var : idx(0),TF(0),box(0);
var : HH(0),LL(0),TL1(0),TL2(0),TX1(0),str("");
var : DD(0),TT(0),half(0),mav(0),halfval(0);
if Bdate != Bdate[1] Then
idx = 0;
Else
idx = idx+1;
TF = idx%n;
if Bdate != Bdate[1] or (Bdate == Bdate[1] and TF < TF[1]) Then
{
HH = H;
LL = L;
DD = sDate;
TT = sTime;
Box = Box_New(DD,TT,HH,NextBarSdate,NextBarStime,LL);
Box_SetColor(box,Rgb(150,150,150));
Box_SetFill(box,true);
half = Ceiling(TF/2);
halfval = (HH+LL)/2;
TL1 = TL_New(sDate[half],sTime[half],HH,sdate[half],Stime[half],LL);
TL2 = TL_New(DD,TT,mav,NextBarSdate,NextBarStime,mav);
TL_SetColor(TL1,Rgb(255,0,255));
TL_SetColor(TL2,Rgb(255,0,255));
TL_SetSize(TL1,1);
TL_SetSize(TL2,1);
}
Else
{
if HH > 0 and H > HH Then
{
HH = H;
}
if LL > 0 and L < LL Then
{
LL = L;
}
half = Ceiling(TF/2);
halfval = (HH+LL)/2;
Box_SetBegin(box,dd,tt,HH);
Box_SetEnd(box,sDate,sTime,LL);
TL_SetBegin(TL1,sDate[half],sTime[half],HH);
TL_SetEnd(TL1,sDate[half],sTime[half],LL);
TL_SetBegin(TL2,DD,TT,halfval);
TL_SetEnd(TL2,sDate,sTime,halfval);
str = "최고가:"+NumToStr(HH,2)+"(+"+NumToStr((HH-C)/PriceScale,0)+"틱)"+
NewLine+"최저가:"+NumToStr(LL,2)+"(-"+NumToStr((C-LL)/PriceScale,0)+"틱)"+
NewLine+"현재가:"+NumToStr(C,2);
Text_SetString(TX1,str);
Text_SetLocation(TX1,sDate[half],sTime[half],halfval);
}
고맙습니다 수고 하십시요.
2025-03-31
478
글번호 189693
답변완료
2000틱 차트 구현문의
예스차트의 최대 틱차트 구현이 1000틱밖에 되지 않아 2000틱 차트를 만들고 싶습니다
어떤 방법이 있지요?
아래는 예시인데 쉽지가 않습니다.
예시)
VARS: TICK_CNT(0), NEW_BAR(FALSE);
{ 틱 카운트 증가 }
TICK_CNT = TICK_CNT + 1;
{ 2000틱이 되면 새로운 봉을 생성 }
IF TICK_CNT >= 2000 THEN BEGIN
NEW_BAR = TRUE;
TICK_CNT = 0; { 초기화 }
END ELSE BEGIN
NEW_BAR = FALSE;
END;
{ 새로운 봉이 생성될 때만 차트 갱신 }
PLOT1(NEW_BAR, "2000TICK_CHART");
2025-03-30
446
글번호 189692
답변완료
검색식 부탁드립니다
이런건 어떻게 하는지 부탁드립니다.
a 조건을 만족하면 b
b 조건을 만족하면(a,b조건을 모두 만족) c
crossup(c,ma20) 발생이후--- (v1)*2 && c(1) *2 앞의 두 조건이 만족하면
첫째,둘째 crossup(c,ma5) 부탁드립니다
2025-03-30
443
글번호 189691
답변완료
검색식 부탁드립니다
아래 조건에 대한 종목 검색식 부탁드립니다.
A1 = ma(C,20);
B1 = ma(C,60);
이격도 = C <= O*0.97 && C>= O*0.90;
C1 =
A1>B1 &&
A1>H &&
이격도 &&
(O-C)>(H-O) && (O-C)>(C-L);
중심 = valuewhen(1,C1,C);
C1 && 중심(1) > C
2025-03-29
444
글번호 189690
답변완료
종목검색식 부탁드려요.
1. 일목균형표에서 선행스팬1 과 선행스팬2가
초근접해서 즉 거의 붙어서(0.3%이하),
꼭,동시에 상승하는 종목검색식 부탁드립니다.
(단, 근접율 수치는 변수처리)
2-1. 수식1) 의 선이, 수식2)의 선을 골든크로스할때 종목 검색식
2-2. 수식1) 의 선이, 수식2)의 선 위에 있는 종목 검색식 부탁드려요
수식1)
A=(C-lowest(C,period))/C*100;
max(A,0)
수식2)
B=(highest(C,period)-C)/C*100;
max(B,0)
-지표조건
period 60
2025-03-30
437
글번호 189689
답변완료
문의드립니다
분봉차트에서 당일용으로 할때 아래처럼 하는데요
if Bdate != Bdate[1] Then
{
미국장은 밤 10시30분 부터 다음날 5시 까지인데
미국장에서 당일용으로 지표를 만들려면 어떻게 표현해야 하나요?
우리나라시간 10시 30부터 새로운날로 인식하게 하려면?
감사합니다
2025-03-29
427
글번호 189688
답변완료
문의드립니다.
안녕하세요 운영자님
문의사항과 추가요청사항이 각각 1개씩 있습니다.
1. 문의사항 : 의뢰드린 수식을 차트에 적용시켜보니 적용이 안되는 구간도 보이는 것 같은데 설명부탁드립니다. 차트에서 23:00시경부터 01:00 까지조건을 만족해 보이는데도 신호가 뜨질 않습니다.7일선과 27일선이 역배열이고 RSI가 45 이하이면 매도신호가 떠야되는게 아닌지요?
2. 추가 요청사항 : 상승추세일때 RSI선이 55기준선을 상향돌파 시 매수하고
하락추세일때 RSI선이 45기준선을 하향돌파 시 매도하도록 변경 부탁
드립니다.
input : P1(7),P2(27),Period(18);
input : 익절틱수(12),손절틱수(20);
var : m1(0),m2(0),R(0);
m1 = ma(C,P1);
m2 = ma(C,P2);
R = RSI(Period);
Condition1 = m1 > m2 and R >= 55;
Condition2 = m1 < m2 and R <= 45;
if Condition1 == true and Condition1[1] == False Then
Buy();
if Condition2 == true and Condition2[1] == False Then
Sell();
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
2025-03-29
437
글번호 189687