커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3227
글번호 230811
답변완료
수식 문의 드립니다.
안녕하세요
아래 식은 5 이평과 20 이평이 크로스 일때에 바탕화면에 색깔이 다르게 나타나는
식입니다.
수식 한개더 부탁 드립니다.
20 이평이 상승 반전시에는 빨간색으로
20 이평이 하락 반전시에는 파란색으로 바탕화면에 나오게 하는 식입니다.
감사드립니다.
-----------------------------------------------------------------------------
input : P1(5),P2(20);
var : box(0);
var1 = ma(C,P1);
var2 = ma(C,P2);
if CrossUp(var1,Var2) Then
{
box = Box_New(sDate,sTime,H,NextBarSdate,NextBarStime,L);
Box_SetColor(box,Pink);
Box_SetFill(box,true);
Box_SetExtFill(box,true);
}
Else if CrossDown(var1,Var2) Then
{
box = Box_New(sDate,sTime,H,NextBarSdate,NextBarStime,L);
Box_SetColor(box,LightBlue);
Box_SetFill(box,true);
Box_SetExtFill(box,true);
}
Else
{
Box_SetEnd(box,NextBarSdate,NextBarStime,L);
}
2023-01-10
909
글번호 165247
답변완료
시스템식 부탁 드립니다
안녕하세요^^
새해 복 많이 받으세요
궁금한 수식은
시스템식
스톡 기준선 골드 + 이동 평균선 골드 (변수 조정 , 동일봉 아니여도 됌) 매수
스톡 기준선 데드 + 이동 평균선 데드 (변수 조정 , 동일봉 아니여도 됌) 매도
지표식
스톡 기준선 골드 + 이동 평균선 골드 (변수 조정 , 동일봉 아니여도 됌) 빨강
스톡 기준선 데드 + 이동 평균선 데드 (변수 조정 , 동일봉 아니여도 됌) 파랑
언제나 감사 드립니다
수고 하세요
2023-01-10
1061
글번호 165246
답변완료
지표
항상감사합니다.
주신 수식에 진동폭표시가 가능하다면
진동폭 나눈글씨도 함께 나올 수있을까요
지정가+진동폭표시
지정가+3.5[1/20],가격
예]
"+3.5[1/1],가격
"+3.5[1/19],가격
"+3.5[1/18],가격
"+3.5[1/17],가격
"+3.5[1/16],가격
"+3.5[1/15],가격
"+3.5[1/14],가격
"+3.5[1/13],가격
"+3.5[1/12],가격
"+3.5[1/11],가격
"+3.5[1/10],가격
"+3.5[1/9],가격
"+3.5[1/8],가격
"+3.5[1/7],가격
"+3.5[1/6],가격
"+3.5[1/5],가격
"+3.5[1/4],가격
"+3.5[1/3],가격
"+3.5[1/2],가격
"+3.5[1/1],가격
지정가
"-3.5[1/1],가격
"-3.5[1/19],가격
"-3.5[1/18],가격
"-3.5[1/17],가격
"-3.5[1/16],가격
"-3.5[1/15],가격
"-3.5[1/14],가격
"-3.5[1/13],가격
"-3.5[1/12],가격
"-3.5[1/11],가격
"-3.5[1/10],가격
"-3.5[1/9],가격
"-3.5[1/8],가격
"-3.5[1/7],가격
"-3.5[1/6],가격
"-3.5[1/5],가격
"-3.5[1/4],가격
"-3.5[1/3],가격
"-3.5[1/2],가격
"-3.5[1/1],가격
지정가-진동폭
[주신수식]-
input : 지정가(292.95),진동폭(3.5);
var1 = 지정가;
value1 = 진동폭/20;
Plot1(var1);
plot10(var1+value1*1);
plot11(var1+value1*2);
plot12(var1+value1*3);
plot13(var1+value1*4);
plot14(var1+value1*5);
plot15(var1+value1*6);
plot16(var1+value1*7);
plot17(var1+value1*8);
plot18(var1+value1*9);
plot19(var1+value1*10);
plot20(var1-value1*1);
plot21(var1-value1*2);
plot22(var1-value1*3);
plot23(var1-value1*4);
plot24(var1-value1*5);
plot25(var1-value1*6);
plot26(var1-value1*7);
plot27(var1-value1*8);
plot28(var1-value1*9);
plot29(var1-value1*10);
var : tx1(0);
var : tx10(0),tx11(0),tx12(0),tx13(0),tx14(0),tx15(0),tx16(0),tx17(0),tx18(0),tx19(0);
var : tx20(0),tx21(0),tx22(0),tx23(0),tx24(0),tx25(0),tx26(0),tx27(0),tx28(0),tx29(0);
Text_Delete(tx1);
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);
Text_Delete(tx23);
Text_Delete(tx24);
Text_Delete(tx25);
Text_Delete(tx26);
Text_Delete(tx27);
Text_Delete(tx28);
Text_Delete(tx29);
tx1 = Text_New(NextBarSdate,NextBarStime,var1," 지정가:"+NumToStr(var1,2));
tx10 = Text_New(NextBarSdate,NextBarStime,var1+value1*1," +1:"+NumToStr(var1+value1*1,2));
tx11 = Text_New(NextBarSdate,NextBarStime,var1+value1*2," +2:"+NumToStr(var1+value1*2,2));
tx12 = Text_New(NextBarSdate,NextBarStime,var1+value1*3," +3:"+NumToStr(var1+value1*3,2));
tx13 = Text_New(NextBarSdate,NextBarStime,var1+value1*4," +4:"+NumToStr(var1+value1*4,2));
tx14 = Text_New(NextBarSdate,NextBarStime,var1+value1*5," +5:"+NumToStr(var1+value1*5,2));
tx15 = Text_New(NextBarSdate,NextBarStime,var1+value1*6," +6:"+NumToStr(var1+value1*6,2));
tx16 = Text_New(NextBarSdate,NextBarStime,var1+value1*7," +7:"+NumToStr(var1+value1*7,2));
tx17 = Text_New(NextBarSdate,NextBarStime,var1+value1*8," +8:"+NumToStr(var1+value1*8,2));
tx18 = Text_New(NextBarSdate,NextBarStime,var1+value1*9," +9:"+NumToStr(var1+value1*9,2));
tx19 = Text_New(NextBarSdate,NextBarStime,var1+value1*10," +10:"+NumToStr(var1+value1*10,2));
tx20 = Text_New(NextBarSdate,NextBarStime,var1-value1*1," -1:"+NumToStr(var1-value1*1,2));
tx21 = Text_New(NextBarSdate,NextBarStime,var1-value1*2," -2:"+NumToStr(var1-value1*2,2));
tx22 = Text_New(NextBarSdate,NextBarStime,var1-value1*3," -3:"+NumToStr(var1-value1*3,2));
tx23 = Text_New(NextBarSdate,NextBarStime,var1-value1*4," -4:"+NumToStr(var1-value1*4,2));
tx24 = Text_New(NextBarSdate,NextBarStime,var1-value1*5," -5:"+NumToStr(var1-value1*5,2));
tx25 = Text_New(NextBarSdate,NextBarStime,var1-value1*6," -6:"+NumToStr(var1-value1*6,2));
tx26 = Text_New(NextBarSdate,NextBarStime,var1-value1*7," -7:"+NumToStr(var1-value1*7,2));
tx27 = Text_New(NextBarSdate,NextBarStime,var1-value1*8," -8:"+NumToStr(var1-value1*8,2));
tx28 = Text_New(NextBarSdate,NextBarStime,var1-value1*9," -9:"+NumToStr(var1-value1*9,2));
tx29 = Text_New(NextBarSdate,NextBarStime,var1-value1*10," -10:"+NumToStr(var1-value1*10,2));
Text_SetStyle(tx1,0,2);
Text_SetStyle(tx10,0,2);
Text_SetStyle(tx11,0,2);
Text_SetStyle(tx12,0,2);
Text_SetStyle(tx13,0,2);
Text_SetStyle(tx14,0,2);
Text_SetStyle(tx15,0,2);
Text_SetStyle(tx16,0,2);
Text_SetStyle(tx17,0,2);
Text_SetStyle(tx18,0,2);
Text_SetStyle(tx19,0,2);
Text_SetStyle(tx20,0,2);
Text_SetStyle(tx21,0,2);
Text_SetStyle(tx22,0,2);
Text_SetStyle(tx23,0,2);
Text_SetStyle(tx24,0,2);
Text_SetStyle(tx25,0,2);
Text_SetStyle(tx26,0,2);
Text_SetStyle(tx27,0,2);
Text_SetStyle(tx28,0,2);
Text_SetStyle(tx29,0,2);
2023-01-10
730
글번호 165245
호정0688 님에 의해서 삭제되었습니다.
2023-01-10
0
글번호 165244
신대륙발견 님에 의해서 삭제되었습니다.
2023-01-10
14
글번호 165243
답변완료
속도질문
CountIF(ma(c,600)>=ma(c[1],600),50)>=50
3틱봉에서 위 수식을 적용시
틱이 많은 종목은 랙이 걸려서 차트를 한개이상 띄울 수 없는데
위 식을 다른방식으로 할 수 있는 방법이 있는지 궁금합니다.
수고하십시오.
2023-01-10
544
글번호 165242
답변완료
파라볼릭 동그라미
Input : af(0.02), maxAF(0.2),상(1),하(0);
Var : Sarv(0),tl(0),T(0),tx(0);
var7 = cSAR(af,maxAF);
if var7 > C Then
Plot1(var7, "cSAR",BLUE);
Else
Plot1(var7, "cSAR",RED);
plot2(c,"c");
Sarv = csar(af,maxAF);
If crossup(c,Sarv) Then
{
T = 1;
var1 = Sarv;
Var2 = var1[1];
Condition1 = False;
if var1 <= var2+PriceScale*상 and var1 >= var2-PriceScale*하 and var2 > 0 Then
{
Condition1 = true;
Tx = Text_New(sDate,sTime,var1-PriceScale*3,"●");
Text_SetColor(Tx,Black);
Text_SetStyle(Tx,2,2);
Text_SetSize(Tx,20);
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
}
if CrossDown(C,sarv) Then
T = -1;
Else
{
if T == 1 Then
{
if sarv < var1 Then
{
var1 = sarv;
if Condition1 == False and var1 <= var2+PriceScale*상 and var1 >= var2-PriceScale*하 and var2 > 0 Then
{
Condition1 = true;
Tx = Text_New(sDate,sTime,var1-PriceScale*3,"●");
Text_SetColor(Tx,black);
Text_SetStyle(Tx,2,2);
Text_SetSize(Tx,20);
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
}
}
}
}
쌍바닥 동그라미를 항상 새로 생기는 마지막만 남기고 이전것은 모두 삭제해주세요. 감사합니다
2023-01-10
695
글번호 165241
답변완료
사용자함수 또는 수식부탁드립니다.
아래식은 예스스탁에서 제공하는 cci사용자함수입니다.
일봉기준 cci 수치를 분차트에서 구현하고 싶습니다.
일봉기준 cci사용자함수나
아니면 일봉기준 cci를 분차트에서 볼수있도록
부탁드립니다.
감사합니다~~
Inputs: Length(NumericSimple);
Variables: Sum(0), Counter(0), MD(0), Avgvalue(0);
If Length > 0 Then Begin
Avgvalue = Ma(High + Low + Close, Length);
MD = 0;
For counter = 0 To Length - 1 Begin
MD = MD + Abs(High[counter] + Low[counter] + Close[counter] - Avgvalue);
End;
MD = MD / Length;
If MD == 0 Then
CCI = 0;
Else
CCI = (High + Low + Close - Avgvalue) / (0.015 * MD);
End
Else
CCI = 0;
2023-01-10
612
글번호 165240
답변완료
수식 문의
안녕하세요. 친절한 답변 감사드립니다.
일전 도움 주신 수식을 다 이해하지 못해
다시 여쭙습니다.
예컨데, price channel의 경우
N봉 기간의 최저, 최저가 '가격'을 구해서
최저,최저가가 변하지 않는 한,
그 값을 계속 뿌려주는 수식이라 볼 때,
제 질문은,
price channel이,
n봉 기간 중 최저가가 나온 '가격'을 찾았던 것 처럼
n봉 기간 중 최저가가 나온 '날짜/시간'을 찾아
입력할 수도 있지 않나 하는 겁니다.
물론, 최저가가 갱신되면
날짜/시간도 갱신되어 계산 될 것입니다.
(최고가가 아닌 최저가로 부탁드립니다)
항상 친절한 답변 미리 감사드립니다.
안녕하세요
예스스탁입니다.
수식은 차트 첫봉부터 마지막봉으로 오면서 계산합니다.
현재봉 기준 N봉 최고가에서 현재봉까지 누적값을 계산해 현재봉에 표시는 할 수 있어도
과거로 최고가봉 위치로 다시 돌아가 해당봉부터 누적값을 그려오게 할수는 없습니다.
즉 수식은 현재봉까지 계산해서 왔으면 다시 과거로 돌아가 동작되게 할 수 없습니다.
Input : n(100);
Var : P1(0), P2(0), P3(0),HH(0),cnt(0),HI(-1);
HH = 0;
HI = -1;
For cnt = 0 to N-1
{
if HH == 0 or (HH > 0 and H[cnt] > HH) Then
{
HH = H[cnt];
HI = cnt;
}
}
if HH > 0 Then
{
var1 = 0;
Var2 = 0;
For cnt = 0 to Hi
{
var1 = var1+m[cnt];
Var2 = Var2+v[cnt];
}
P1 = OI * C;
P2 = (var1/var2) * OI;
P3 = P1 / P2;
//Plot1(P1);
//Plot2(P2);
Plot3(P3*100);
}
n봉기간을 입력하면,
해당 기간 내에 최저가를 찾고
그 최저가봉의 날짜/시가를
아래 수식에서의
ndate(20230102),ntime(90000);
값에 대체하여 자동으로 넣어주는 수식을 구하고 싶습니다.
2023-01-10
842
글번호 165239