커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1659
글번호 230811
답변완료
지표 수정 부탁드립니다.
늘 수고가 많으십니다.
아래의 지표를 잘 사용하고 있습니다.
1. 추세선이 연장되어 텍스트 표시가 되는데 캔들이 생성될때 거의 붙어있게 나와서
이 텍스트를 캔들하고 좀 떨어져 표시되게 하고 싶습니다.
2. 상승추세선 및 하락 추세선의 변화는 일정한 요건이 되어야 하는데 이 변화를 좀더
빠르게 생성되게 하는 방법도 있는지요?
이상입니다.
input : af(0.02), maxAF(0.2),추세선두께(4),추세선색1(RED),추세선색2(BLUE),연장선두께(1),연장선색(blue);
input : per1(0),Per2(23.2),Per3(38.2),Per4(50),Per5(61.8),Per6(76.4),Per7(100),Per8(150.0);
input : 텍스트출력(1);
var : T(0),HH(0),LL(0),HD(0),HT(0),LD(0),LT(0),HI(0),HI1(0),LI(0),LI1(0);
var : HH1(0),LL1(0),HD1(0),HT1(0),LD1(0),LT1(0);
var : TL1(0),TL2(0),cnt(0),count(0);
var : TL3(0),TL4(0),TL5(0),TL6(0),TL7(0),TL8(0),TL9(0),TL10(0),tx1(0),tx2(0),tx11(0),tx22(0);
var : tx3(0),tx4(0),tx5(0),tx6(0),tx7(0),tx8(0),tx9(0),tx10(0);
var1 = CSar(af,maxAF);
if crossup(c,var1) Then
{
T = 1;
HH = H;
HD = sdate;
HT = stime;
HI = Index;
HH1 = HH[1];
HD1 = HD[1];
HT1 = HT[1];
HI1 = HI[1];
if LL > 0 Then
{
TL1 = TL_new(LD[1],LT[1],LL[1],HD,HT,HH);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL_Delete(TL7);
TL_Delete(TL8);
TL_Delete(TL9);
TL_Delete(TL10);
#상승연장피봇테이트표현
Value3 = LL+(HH[1]-LL)*(Per1/100);
Value4 = LL+(HH[1]-LL)*(Per2/100);
Value5 = LL+(HH[1]-LL)*(Per3/100);
Value6 = LL+(HH[1]-LL)*(Per4/100);
Value7 = LL+(HH[1]-LL)*(Per5/100);
Value8 = LL+(HH[1]-LL)*(Per6/100);
Value9 = LL+(HH[1]-LL)*(Per7/100);
Value10 = LL+(HH[1]-LL)*(Per8/100);
TL3 = TL_new(HD[1],HT[1],Value3,sdate,stime,value3);
TL4 = TL_new(HD[1],HT[1],Value4,sdate,stime,Value4);
TL5 = TL_new(HD[1],HT[1],Value5,sdate,stime,Value5);
TL6 = TL_new(HD[1],HT[1],Value6,sdate,stime,value6);
TL7= TL_new(HD[1],HT[1],Value7,sdate,stime,Value7);
TL8 = TL_new(HD[1],HT[1],Value8,sdate,stime,Value8);
TL9 = TL_new(HD[1],HT[1],Value9,sdate,stime,Value9);
TL10 = TL_new(HD[1],HT[1],Value10,sdate,stime,Value10);
//추세선 오른쪽 연장설정
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
TL_SetExtRight(TL7,true);
TL_SetExtRight(TL8,true);
TL_SetExtRight(TL9,true);
TL_SetExtRight(TL10,true);
Text_Delete(tx3);
Text_Delete(tx4);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
Text_Delete(tx8);
Text_Delete(tx9);
Text_Delete(tx10);
tx3 = Text_New(sDate,sTime,Value3,NumToStr(Value3,2));
tx4 = Text_New(sDate,sTime,Value4,NumToStr(Value4,2));
tx5 = Text_New(sDate,sTime,Value5,NumToStr(Value5,2));
tx6 = Text_New(sDate,sTime,Value6,NumToStr(Value6,2));
tx7 = Text_New(sDate,sTime,Value7,NumToStr(Value7,2));
tx8 = Text_New(sDate,sTime,Value8,NumToStr(Value8,2));
tx9 = Text_New(sDate,sTime,Value9,NumToStr(Value9,2));
tx10 = Text_New(sDate,sTime,Value10,NumToStr(Value10,2));
Text_SetStyle(tX3,0,1);
Text_SetStyle(tX4,0,1);
Text_SetStyle(tX5,0,1);
Text_SetStyle(tX6,0,1);
Text_SetStyle(tX7,0,1);
Text_SetStyle(tX8,0,1);
Text_SetStyle(tX9,0,1);
Text_SetStyle(tX10,0,1);
if 텍스트출력 == 1 then
{
Tx11 = Text_New(HD1,HT1,HH1,"상:"+NumToStr((HH1-LL1)/PriceScale,0)+NewLine+NumToStr(HH1,2)+" / "+NumToStr(HI1-LI1,0));
Text_SetStyle(tx11,2,1);
Text_SetSize(tx11,12);
Text_Delete(tx1);
Tx1 = Text_New(HD,HT,HH,"상단:"+NumToStr((HH-LL[1])/PriceScale,0)+NewLine+NumToStr(HH,2)+" / "+NumToStr(HI-LI[1],0));
Text_SetStyle(tx1,12,1);
Text_SetSize(tx1,12);
}
}
}
if CrossDown(c,var1) Then
{
T = -1;
LL = L;
LD = sdate;
LT = stime;
LI = Index;
LL1 = LL[1];
LD1 = LD[1];
LT1 = LT[1];
LI1 = Li[1];
if HH > 0 Then
{
TL2 = TL_new(HD[1],HT[1],HH[1],LD,LT,LL);
TL_Delete(TL3);
TL_Delete(TL4);
TL_Delete(TL5);
TL_Delete(TL6);
TL_Delete(TL7);
TL_Delete(TL8);
TL_Delete(TL9);
TL_Delete(TL10);
Value3 = HH-(HH-LL[1])*(Per1/100);
Value4 = HH-(HH-LL[1])*(Per2/100);
Value5 = HH-(HH-LL[1])*(Per3/100);
Value6 = HH-(HH-LL[1])*(Per4/100);
Value7 = HH-(HH-LL[1])*(Per5/100);
Value8 = HH-(HH-LL[1])*(Per6/100);
Value9 = HH-(HH-LL[1])*(Per7/100);
Value10 = HH-(HH-LL[1])*(Per8/100);
TL3 = TL_new(LD[1],LT[1],value3,sdate,stime,value3);
TL4 = TL_new(LD[1],LT[1],Value4,sdate,stime,Value4);
TL5 = TL_new(LD[1],LT[1],Value5,sdate,stime,Value5);
TL6 = TL_new(LD[1],LT[1],Value6,sdate,stime,Value6);
TL7 = TL_new(LD[1],LT[1],Value7,sdate,stime,value7);
TL8 = TL_new(LD[1],LT[1],Value8,sdate,stime,Value8);
TL9 = TL_new(LD[1],LT[1],Value9,sdate,stime,Value9);
TL10 = TL_new(LD[1],LT[1],Value10,sdate,stime,Value10);
//추세선 오른쪽 연장설정
TL_SetExtRight(TL3,true);
TL_SetExtRight(TL4,true);
TL_SetExtRight(TL5,true);
TL_SetExtRight(TL6,true);
TL_SetExtRight(TL7,true);
TL_SetExtRight(TL8,true);
TL_SetExtRight(TL9,true);
TL_SetExtRight(TL10,true);
Text_Delete(tx3);
Text_Delete(tx4);
Text_Delete(tx5);
Text_Delete(tx6);
Text_Delete(tx7);
Text_Delete(tx8);
Text_Delete(tx9);
Text_Delete(tx10);
tx3 = Text_New(sDate,sTime,Value3,NumToStr(Value3,2));
tx4 = Text_New(sDate,sTime,Value4,NumToStr(Value4,2));
tx5 = Text_New(sDate,sTime,Value5,NumToStr(Value5,2));
tx6 = Text_New(sDate,sTime,Value6,NumToStr(Value6,2));
tx7 = Text_New(sDate,sTime,Value7,NumToStr(Value7,2));
tx8 = Text_New(sDate,sTime,Value8,NumToStr(Value8,2));
tx9 = Text_New(sDate,sTime,Value9,NumToStr(Value9,2));
tx10 = Text_New(sDate,sTime,Value10,NumToStr(Value10,2));
Text_SetStyle(tX3,0,1);
Text_SetStyle(tX4,0,1);
Text_SetStyle(tX5,0,1);
Text_SetStyle(tX6,0,1);
Text_SetStyle(tX7,0,1);
Text_SetStyle(tX8,0,1);
Text_SetStyle(tX9,0,1);
Text_SetStyle(tX10,0,1);
if 텍스트출력 == 1 then
{
Tx22 = Text_New(LD1,LT1,LL1,"하:"+NumToStr((HH1-LL1)/PriceScale,0)+NewLine+NumToStr(LL1,2)+" / "+NumToStr(LI1-HI1,0));
Text_SetStyle(tx22,2,0);
Text_SetSize(tx22,12);
Text_Delete(tx2);
Tx2 = Text_New(LD,LT,LL,"가:"+NumToStr((HH[1]-LL)/PriceScale,0)+NewLine+NumToStr(LL,2)+" / "+NumToStr(LI-HI[1],0));
Text_SetStyle(tx2,2,1);
Text_SetSize(tx2,12);
}
}
}
if T == 1 then
{
if H > HH Then
{
HH = H;
HD = sdate;
HT = stime;
HI = Index;
TL_SetEnd(TL1,HD,HT,HH);
if 텍스트출력 == 1 then
{
Text_Delete(tx1);
Tx1 = Text_New(HD,HT,HH,"A:"+NumToStr((HH-LL[1])/PriceScale,0)+NewLine+NumToStr(HH,2)+" / "+NumToStr(HI-LI[1],0));
Text_SetStyle(tx1,2,1);
Text_SetSize(tx1,11);
}
}
}
if T == -1 then
{
if L < LL Then
{
LL = L;
LD = sdate;
LT = stime;
LI = Index;
TL_SetEnd(TL2,LD,LT,LL);
if 텍스트출력 == 1 then
{
Text_Delete(tx2);
Tx2 = Text_New(LD,LT,LL,"B:"+NumToStr((HH[1]-LL)/PriceScale,0)+NewLine+NumToStr(LL,2)+" / "+NumToStr(LI-HI[1],0));
Text_SetStyle(tx2,2,0);
Text_SetSize(tx2,11);
}
}
}
#추세선 두께
TL_SetSize(TL1,추세선두께);
TL_SetSize(TL2,추세선두께);
#추세선 색상
TL_SetColor(TL1,추세선색1);
TL_SetColor(TL2,추세선색2);
#연장선 두께
TL_SetSize(TL3,연장선두께);
TL_SetSize(TL4,연장선두께);
TL_SetSize(TL5,연장선두께);
TL_SetSize(TL6,연장선두께);
TL_SetSize(TL7,연장선두께);
TL_SetSize(TL8,연장선두께);
TL_SetSize(TL9,연장선두께);
TL_SetSize(TL10,연장선두께);
#연장선 색상
TL_SetColor(TL3,BLACk);
TL_SetColor(TL4,GREEN);
TL_SetColor(TL5,연장선색);
TL_SetColor(TL6,YELLOw);
TL_SetColor(TL7,GREEn);
TL_SetColor(TL8,연장선색);
TL_SetColor(TL9,WHITe);
TL_SetColor(TL10,REd);
Text_SetLocation(tx3,NextBarSdate,NextBarStime,Value3);
Text_SetLocation(tx4,NextBarSdate,NextBarStime,Value4);
Text_SetLocation(tx5,NextBarSdate,NextBarStime,Value5);
Text_SetLocation(tx6,NextBarSdate,NextBarStime,Value6);
Text_SetLocation(tx7,NextBarSdate,NextBarStime,Value7);
Text_SetLocation(tx8,NextBarSdate,NextBarStime,Value8);
Text_SetLocation(tx9,NextBarSdate,NextBarStime,Value9);
Text_SetLocation(tx10,NextBarSdate,NextBarStime,Value10);
2021-06-16
822
글번호 150009
234fsdae 님에 의해서 삭제되었습니다.
2021-06-16
1
글번호 150008
답변완료
도움 부탁드립니다..
안녕하세요..
지난번 만들어주신 수식감사드립니다..
거기에서 지표하나를 추가 부탁드립니다.
var3 의 당일 최고값을 지표로 나타내고 싶습니다..
그리고 하루가 달라지면 그 값은 사라지고
당일의 최고값이 생기면 갱신되면 좋겠습니다.
1
input : n(5);
var : i1(0),i2(0),i3(0),DH(0);
if Bdate != Bdate[1] Then
{
i1 = 0;
DH = H;
i2 = Index;
}
Else
{
if DH > 0 and H > DH Then
{
DH = H;
i2 = Index;
}
}
if i1 == 0 and c >= DayOpen*(1+n/100) Then
i1 = Index;
i3 = Index;
if i3 > i2 and i2 > i1 and i1 > 0 and
DayHigh > DayOpen*(1+n/100) Then
{
var1 = DayHigh-C;
Var2 = DayHigh-DayOpen*(1+n/100);
Var3 = var1/Var2;
Plot1(Var3);
}
Else
Plot1(0);
2021-06-16
1090
글번호 150007
답변완료
시스템식 문의 드립니다.(2)
안녕하세요 수고가 많으십니다.
시스템식을 요청드리려고 합니다.
주식현물 시스템식을 요청드리려고 하는데
1타점 2타점 3타점 매수타점 주가를 변수로 두고 싶습니다.
변수이름은 1타점, 2타점 3타점 을 작성하고
변수 값은 제가 매수하고 싶은 금액 을 적고 싶습니다.
그리고 제가 팔고 싶은 익절금액, 손절금액 도 변수로 적용하고 싶습니다.
그리고 1타점, 2타점, 3타점에 제가 투자할 금액도 변수로 작성하고 싶습니다.
대략적으로 그림판으로 작성했는데 위 그림과 같이 만들어졌으면 합니다.
감사합니다.
수고하십시오
2021-06-16
1200
글번호 150006
답변완료
시스템식 문의 드립니다.
안녕하세요 수고가 많으십니다.
시스템식을 요청드리려고 합니다.
주식현물 시스템식을 요청드리려고 하는데
당일시가의 -3% , -5%, -10% 이렇게 분할매수 를 진행할려고 생각중이고
오후 1시 이후에는 -5%, -10% 이렇게 분할매수를 진행하려고 합니다.
청산은 평단가 2%로 되면 익절, 그리고 당일 청산이기 때문에 3시 20분 청산.
이렇게 생각하고 있습니다.
중요포인트가 장시작하고 9시부터 13시 까지랑 , 13시부터 15시 30분까지가
분할매수 타점이 틀린건데, 어떻게 시스템식을 구성해야할지 잘 모르겠습니다. ㅜ.ㅜ
부탁드리겠습니다
감사합니다.
수고하십시오
2021-06-16
1026
글번호 150005
234fsdae 님에 의해서 삭제되었습니다.
2021-06-16
28
글번호 150004
러블리 님에 의해서 삭제되었습니다.
2021-06-16
8
글번호 149988
답변완료
산식검토
아래는 분봉에서 일봉이평을 구현하기위한 산식입니다
5일,10일,20일 이평을 구현하려고 했는데 처음부터 벽에 부딪히네요
분봉에서 하루전체가 직선으로 표현이 않돼서 질문합니다
수정부탁드립니다
Input : P1(5),P2(10),P3(20);
var : Count(0), SumV(0),mav(0);
sumv =0 ;
For Count = 0 to P1-1 {
sumv = sumv+DayClose(count);
}
Mav =sumv / P1 ;
Plot1(Mav,"일평");
2021-06-16
1156
글번호 149975
답변완료
문의 드립니다
당일용 지수이평 돌파식 부탁드립니다
당일 9시 ~ 3시30분 동안 지수이평을 상향돌파하면 매수
하향돌파하면 매도..
감사합니다
2021-06-16
1080
글번호 149974