커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7559
글번호 230811
2wnwn 님에 의해서 삭제되었습니다.
2013-06-13
13
글번호 64279
답변완료
기간동안의 최대값 문의드립니다
var : maxv(0);
If var1 = v;
If v >var1 then maxv= v;
이런식으로 수식을 작성해서 ,
매 봉 기준으로 이전60일까지의 최대값을 maxv로 나타내고 싶은데
수식을 어떻게 작성해야 하나요?
그리고 연도별 최대거래량을 maxv로 나타내고 싶으면 어떻게 해야할지 알려주세요~
2013-06-13
191
글번호 64277
답변완료
틱차트에 관하여 문의 드립니다.
수고 많으십니다.
현재 키움 hts 를 사용하고 있는데
선물 틱차트에서 600틱 으로 설정을 하면 캔들이 767개 밖에 안나와서 겨우 11일치 차트만이 화면에 보이고 그 전 날짜의 차트는 볼 수가 없습니다.
이상해서 대신 hts 에서 해보니 마찬가지입니다.
600틱 x 767 = 약 64만 이라는 숫자가 나옵니다.
틱수를 바꾸고 거기에 해당 캔들 수를 곱하면 거의 비슷한 숫자 64만이 나옵니다.
그 회사 hts 가 그렇게 설정되어 있어서 그런건가요?
그리고 Yesstock 도 마찬가지인지요?
바쁘시더라도 궁금증을 해소시켜주시면 대단히 감사하겠습니다.
오늘도 좋은 하루 되시기 바라오며....
2013-06-13
269
글번호 64276
답변완료
문의드립니다
매수거래량 10000 주당 상승가격이 1000원이라면
20000주가 될때 2000원까지 상승할거란걸 예상하고 싶은데
지표로 나타내는것이 가능할까요?
2013-06-13
187
글번호 64275
답변완료
식 매매로 바꿔요
안녕하세요
아래식을. 자동매매. 가능케 부탁합니다
input : N(5),n1(0.2);
var : D2D3(0,data1),D4D5(0,data1),D6D7(0,data1);
var : V1(0,data1),V2(0,data2),value(0,data1),idx(0,data1);
var : HH(0,data1),LL(0,data1),case(0,data1);
D2D3 = (data2(LowD(0))+data3(HighD(0)))/2;
D4D5 = (data4(LowD(0))+data5(HighD(0)))/2;
D6D7 = (data6(LowD(0))+data7(HighD(0)))/2;
if D2D3 < D4D5 and D2D3 < D6D7 Then{
      V1 = data2(LowD(0));
      V2 = data3(HighD(0));
      value = 1;
}
if D4D5 < D2D3 and D4D5 < D6D7 Then{
      V1 = data4(LowD(0));
      V2 = data5(HighD(0));
      value = 2;
}
if D6D7 < D2D3 and D4D5 < D6D7 Then{
      V1 = data6(LowD(0));
      V2 = data7(HighD(0));
      value = 3;
}
#D2D3가 제일 작은 값인 경우
if value == 1 Then{
      #V1을 data3~data7의 종가가 상향돌파
      if crossup(data3(c),V1) or crossup(data4(c),V1) or crossup(data5(c),V1) or crossup(data6(c),V1) or crossup(data7(c),V1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 11;
      }
      #V1을 data3~data7의 종가가 하향돌파
      if CrossDown(data3(c),V1) or CrossDown(data4(c),V1) or CrossDown(data5(c),V1) or CrossDown(data6(c),V1) or CrossDown(data7(c),V1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 12;
      }
      #V2를 data2, data4~data7의 종가가 상향돌파
      if crossup(data2(c),V2) or crossup(data4(c),V2) or crossup(data5(c),V2) or crossup(data6(c),V2) or crossup(data7(c),V2) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 13;
      }
      #V2를 data2, data4~data7의 종가가 하향돌파
      if CrossDown(data2(c),V2) or CrossDown(data4(c),V2) or CrossDown(data5(c),V2) or CrossDown(data6(c),V2) or CrossDown(data7(c),V2) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 14;
      }
      
      ###근접
      #data3~data7의 종가가 V1-N1 밑에서 위로 근접
      if crossup(data3(c),V1-N1) or crossup(data4(c),V1-N1) or crossup(data5(c),V1-N1) or crossup(data6(c),V1-N1) or crossup(data7(c),V1-N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 15;
      }
      #data3~data7의 종가가 V1+N1 위에서 아래로 근접
      if CrossDown(data3(c),V1+N1) or CrossDown(data4(c),V1+N1) or CrossDown(data5(c),V1+N1) or CrossDown(data6(c),V1+N1) or CrossDown(data7(c),V1+N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 16;
      }
      #data2, data4~data7의 종가가 V2-N1 아래에서 위로 근접
      if crossup(data2(c),V2-N1) or crossup(data4(c),V2-N1) or crossup(data5(c),V2-N1) or crossup(data6(c),V2-N1) or crossup(data7(c),V2-N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 17;
      }
      #data2, data4~data7의 종가가 V2+N1 위에서 아래로 근접
      if CrossDown(data2(c),V2+N1) or CrossDown(data4(c),V2+N1) or CrossDown(data5(c),V2+N1) or CrossDown(data6(c),V2+N1) or CrossDown(data7(c),V2+N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 18;
      }
 
}
#D4D5가 제일 작은 값인 경우
if value == 2 Then{
      #V1을 data2,data3,data5,data6,data7의 종가가 상향돌파
      if crossup(data2(c),V1) or crossup(data3(c),V1) or crossup(data5(c),V1) or crossup(data6(c),V1) or crossup(data7(c),V1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 21;
      }
      #V1을 data2,data3,data5,data6,data7의 종가가 하향돌파
      if CrossDown(data2(c),V1) or CrossDown(data3(c),V1) or CrossDown(data5(c),V1) or CrossDown(data6(c),V1) or CrossDown(data7(c),V1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 22;
      }
      #V2를 data2,data3,data4,data6,data7 종가가 상향돌파
      if crossup(data2(c),V2) or crossup(data3(c),V2) or crossup(data4(c),V2) or crossup(data6(c),V2) or crossup(data7(c),V2) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 23;
      }
      #V2를 data2,data3,data4,data6,data7 종가가 하향돌파
      if CrossDown(data2(c),V2) or CrossDown(data3(c),V2) or CrossDown(data4(c),V2) or CrossDown(data6(c),V2) or CrossDown(data7(c),V2) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 24;
      }     
      
      #근접
      if crossup(data2(c),V1-N1) or crossup(data3(c),V1-N1) or crossup(data5(c),V1-N1) or crossup(data6(c),V1-N1) or crossup(data7(c),V1-N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 25;
      }
      if CrossDown(data2(c),V1+N1) or CrossDown(data3(c),V1+N1) or CrossDown(data5(c),V1+N1) or CrossDown(data6(c),V1+N1) or CrossDown(data7(c),V1+N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 26;
      }
      if crossup(data2(c),V2-N1) or crossup(data3(c),V2-N1) or crossup(data4(c),V2-N1) or crossup(data6(c),V2-N1) or crossup(data7(c),V2-N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 27;
      }
      if CrossDown(data2(c),V2+N1) or CrossDown(data3(c),V2+N1) or CrossDown(data4(c),V2+N1) or CrossDown(data6(c),V2+N1) or CrossDown(data7(c),V2+N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 28;
      }  
}
#D6D7가 제일 작은 값인 경우
if value == 2 Then{
      #V1을 data2,data3,data4,data5,data7의 종가가 상향돌파
      if crossup(data2(c),V1) or crossup(data3(c),V1) or crossup(data4(c),V1) or crossup(data5(c),V1) or crossup(data7(c),V1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 31;
      }
      #V1을 data2,data3,data4,data5,data7의 종가가 하향돌파
      if CrossDown(data2(c),V1) or CrossDown(data3(c),V1) or CrossDown(data4(c),V1) or CrossDown(data5(c),V1) or CrossDown(data7(c),V1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 32;
      }
      #V2를 data2,data3,data4,data5,data6 종가가 상향돌파
      if crossup(data2(c),V2) or crossup(data3(c),V2) or crossup(data4(c),V2) or crossup(data5(c),V2) or crossup(data6(c),V2) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 33;
      }
      #V2를 data2,data3,data4,data5,data6 종가가 하향돌파
      if CrossDown(data2(c),V2) or CrossDown(data3(c),V2) or CrossDown(data4(c),V2) or CrossDown(data5(c),V2) or CrossDown(data6(c),V2) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 34;
      }
      
      #근접
      if crossup(data2(c),V1-N1) or crossup(data3(c),V1-N1) or crossup(data4(c),V1-N1) or crossup(data5(c),V1-N1) or crossup(data7(c),V1-N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 35;
      }
      if CrossDown(data2(c),V1+N1) or CrossDown(data3(c),V1+N1) or CrossDown(data4(c),V1+N1) or CrossDown(data5(c),V1+N1) or CrossDown(data7(c),V1+N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 36;
      }
      if crossup(data2(c),V2-N1) or crossup(data3(c),V2-N1) or crossup(data4(c),V2-N1) or crossup(data5(c),V2-N1) or crossup(data6(c),V2-N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 37;
        }
      if CrossDown(data2(c),V2+N1) or CrossDown(data3(c),V2+N1) or CrossDown(data4(c),V2+N1) or CrossDown(data5(c),V2+N1) or CrossDown(data6(c),V2+N1) Then{
            idx = data1(index);
            HH = data1(H);
            LL = data1(L);
            case = 38;
      }
}
if data1(index) >= idx and data1(index) < idx+N Then{
      if case == 11 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 12 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 13 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 14 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 15 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 16 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 17 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 18 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      
      
      
      if case == 21 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 22 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 23 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 24 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 25 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 26 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 27 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 28 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      
      
      if case == 31 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 32 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 33 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 34 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 35 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 36 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 37 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
      if case == 38 Then{
            plot1(HH,"고가",RED);
            plot2(LL,"저가",RED);
      }
}
감사^^
2013-06-13
210
글번호 64274
답변완료
30854 재문의입니다.
안녕하세요.
재문의드립니다.
사진과같이 부탁드립니다.
수렴율이 0.03이내이면 이평선이 교차 되도록 부탁드립니다.
노고에 항상 감사드립니다.
2013-06-13
265
글번호 64273
답변완료
수식문의
데이타2,3의 전일의 시가 고 저 를 데이타 1에 적용하는 수식부탁합니다 그리고 5일이평이 역5일이평크로스선 부탁합니다
2013-06-13
202
글번호 64270
답변완료
문의드립니다
1.
전봉대비 현재가격과 미결이 같은 방향일때 빨간색으로 미결 표시
전봉대비 현재가격과 미결이 다른 방향일때 파란색으로 미결 표시
전봉대비 현재가격이 같은경우(도지) 직전에 표시된 미결색과 같은색..
예를들면..
가격상승 미결상승 빨간색 미결
가격하락 미결하락 빨간색 미결
가격하락 미결상승 파란색 미결
가격상승 미결하락 파란색 미결
이전가격동일 이전 미결색
2.
틱 차트볼때 거래량이 장시작하고 장끝날때 상대적으로 높아서 장중 거래량 볼때 거래량이 작아보여 좀 그렀습니다.
거래량 봉을 장시작하고 2개봉 장종료직전 2개봉은 안보이게 할 수있을까요?
3.
시스템으로 진입신호가 나오고 진입후..
이전 5개봉 고가 혹은 저가를 깰때(손실전환) 또는 10틱 손실일때 둘중 하나라도 걸리면
시장가로 손절하는 수식좀 부탁드립니다. 5개봉, 10틱은 외부에서 수정할수 있게요.
항상 감사합니다..부탁드리겠습니다.
2013-06-13
231
글번호 64269
답변완료
수식부탁드립이다
매일 매일 수고가 많습니다.
아래 수식은 이평이 확산될 때 굵게 표시되는 수식인데요..
이평이 교차한 다음과 또 2틱이내로 접근했다가 확산할 때에만
굵게 표시되도롣 부탁드립니다.
(혹시 2틱 이내가 표시되지 않는다면 다른 방법은 없을 까요?)
var : V_J1(0),V_J2(0);
var : sumGap(0), gap(0), GO(0), GH(0), GL(0), GC(0);
if date!=date[1] then { // 날짜가 변경되는 봉에서(분봉에서 첫번째 봉)
gap = Open-Close[1]; // 일간갭
sumGap = sumGap+gap; // 일간갭 누적
}
GO = O - sumGap;// 갭보정 시가
GH = H - sumGap;// 갭보정 고가
GL = L - sumGap;// 갭보정 저가
GC = C - sumGap; // 갭보정 종가
var1 = wma(GC,20)/(wma(GC,10)/100);
var2 = wma(GC,5)/(wma(GC,20)/100);
value1 = max(var1,var2);
value2 = min(var1,var2);
value3 = value1-value2;#폭
if value3 > value3[1] Then{#₩12폭이 커질때
plot1(var1,"1",blue,def,12);#굵기 8
plot2(var2,"2",red,def,12);#굵기 8
}
else{#폭이 작아질때
plot1(var1,"1",blue,def,1);#굵기 1
plot2(var2,"2",red,def,1);#굵기 1
}
2013-06-13
262
글번호 64268