커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4528
글번호 230811
답변완료
부탁드립니다
수고하십니다
아래수식이 맞나요?
var : cnt(0);
Array : O2[20](0,data2),H2[20](0,data2),L2[20](0,data2);
Array : O3[20](0,data3),H3[20](0,data3),L3[20](0,data3);
Array : O4[20](0,data4),H4[20](0,data4),L4[20](0,data4);
Array : O5[20](0,data5),H5[20](0,data5),L5[20](0,data5);
Array : O6[20](0,data6),H6[20](0,data6),L6[20](0,data6);
Array : O7[20](0,data7),H7[20](0,data7),L7[20](0,data7);
Array : O8[20](0,data8),H8[20](0,data8),L8[20](0,data8);
Array : O9[11](0,data9),H9[20](0,data9),L9[20](0,data9);
if data2(bdate != bdate[1]) Then {
O2[0] = data2(O);
H2[0] = data2(H);
L2[0] = data2(L);
for cnt = 1 to 19 {
O2[cnt] = O2[cnt-1][1];
H2[cnt] = H2[cnt-1][1];
L2[cnt] = L2[cnt-1][1]; }}
if H2[0] > 0 and data2(H) > H2[0] Then
H2[0] = data2(H);
if L2[0] > 0 and data2(L) < L2[0] Then
L2[0] = data2(L);
if data3(bdate != bdate[1]) Then {
O3[0] = data3(O);
H3[0] = data3(H);
L3[0] = data3(L);
for cnt = 1 to 19 {
O3[cnt] = O3[cnt-1][1];
H3[cnt] = H3[cnt-1][1];
L3[cnt] = L3[cnt-1][1];}}
if H3[0] > 0 and data3(H) > H3[0] Then
H3[0] = data3(H);
if L3[0] > 0 and data3(L) < L3[0] Then
L3[0] = data3(L);
if data4(bdate != bdate[1]) Then {
O4[0] = data4(O);
H4[0] = data4(H);
L4[0] = data4(L);
for cnt = 1 to 19 {
O2[cnt] = O2[cnt-1][1];
H2[cnt] = H2[cnt-1][1];
L2[cnt] = L2[cnt-1][1]; }}
if H4[0] > 0 and data4(H) > H4[0] Then
H4[0] = data4(H);
if L4[0] > 0 and data4(L) < L4[0] Then
L4[0] = data4(L);
if data5(bdate != bdate[1]) Then {
O5[0] = data5(O);
H5[0] = data5(H);
L5[0] = data5(L);
for cnt = 1 to 19 {
O5[cnt] = O5[cnt-1][1];
H5[cnt] = H5[cnt-1][1];
L5[cnt] = L5[cnt-1][1]; }}
if H5[0] > 0 and data5(H) > H5[0] Then
H5[0] = data5(H);
if L5[0] > 0 and data5(L) < L5[0] Then
L5[0] = data5(L);
if data6(bdate != bdate[1]) Then {
O6[0] = data6(O);
H6[0] = data6(H);
L6[0] = data6(L);
for cnt = 1 to 19 {
O6[cnt] = O6[cnt-1][1];
H6[cnt] = H6[cnt-1][1];
L6[cnt] = L6[cnt-1][1]; }}
if H6[0] > 0 and data6(H) > H6[0] Then
H6[0] = data6(H);
if L6[0] > 0 and data6(L) < L6[0] Then
L6[0] = data6(L);
if data7(bdate != bdate[1]) Then {
O7[0] = data7(O);
H7[0] = data7(H);
L7[0] = data7(L);
for cnt = 1 to 19 {
O7[cnt] = O7[cnt-1][1];
H7[cnt] = H7[cnt-1][1];
L7[cnt] = L7[cnt-1][1]; }}
if H7[0] > 0 and data7(H) > H7[0] Then
H7[0] = data7(H);
if L7[0] > 0 and data7(L) < L7[0] Then
L7[0] = data7(L);
if data8(bdate != bdate[1]) Then {
O8[0] = data8(O);
H8[0] = data8(H);
L8[0] = data8(L);
for cnt = 1 to 19 {
O8[cnt] = O8[cnt-1][1];
H8[cnt] = H8[cnt-1][1];
L8[cnt] = L8[cnt-1][1]; }}
if H8[0] > 0 and data8(H) > H8[0] Then
H8[0] = data8(H);
if L8[0] > 0 and data8(L) < L8[0] Then
L8[0] = data8(L);
if data9(bdate != bdate[1]) Then {
O9[0] = data9(O);
H9[0] = data9(H);
L9[0] = data9(L);
for cnt = 1 to 19 {
O9[cnt] = O9[cnt-1][1];
H9[cnt] = H9[cnt-1][1];
L9[cnt] = L9[cnt-1][1]; }}
if H9[0] > 0 and data9(H) > H9[0] Then
H9[0] = data9(H);
if L9[0] > 0 and data9(L) < L9[0] Then
L9[0] = data9(L);
plot1(O2[0],"data2시가");plot7(O4[0],"data4시가");plot13(O6[0],"data6시가");
plot2(H2[0],"data2고가");plot8(O4[0],"data4고가");plot14(O6[0],"data6고가");
plot3(L2[0],"data2저가");plot9(O4[0],"data4저가");plot15(O6[0],"data6시저가");
plot4(O3[0],"data3시가");plot10(O5[0],"data5시가");plot16(O7[0],"data7시가");
plot5(H3[0],"data3고가");plot11(O5[0],"data5고가");plot17(O7[0],"data7고가");
plot6(L3[0],"data3저가");plot12(O5[0],"data5저가");plot18(O7[0],"data7저가");
plot19(O8[0],"data8시가");plot20(O8[0],"data8고가");plot21(O8[0],"data8저가");
plot22(O9[0],"data9시가");plot23(O9[0],"data9고가");plot24(O9[0],"data9저가");
2019-04-30
198
글번호 128285
답변완료
질문 드립니다.
안녕하세요 운영자님.
처음 질문 드립니다.
거래량 이평선으로 진입 청산을 하고 싶습니다.
로직 부탁 드립니다.
거래량 20과 60을 변수로 최적화 할 수 있도록 부탁 드립니다.
거래량이평선 20일선이 60선 위에 있을 때 매수
거래량이평선 20일선이 60선 밑에 있을 때 매도
감사합니다.
2019-04-30
214
글번호 128277
답변완료
예스 글로발
안녕하세요?
한투 예스글로발에서 SGX A50 만기일 이면 1 아니면 0을 return 하는 함수 작성 부탁합니다
감사합니다
2019-04-30
187
글번호 128274
답변완료
수식 수정좀 부탁드립니다.
아래 수식은 일봉상 5, 10, 20, 60, 120선과 일목의 기준선 전환선을 긋는 수식인데
여기에 일봉상 ma120 일선 다음에 일봉상 wma120 일 선을 하나 더 긋고 싶습니다.
input : P1(5),P2(10),P3(20),P4(60),P5(120),Period1(9),Period2(26);
var : count(0);
var : sumV1(0),sumV2(0),sumV3(0),sumV4(0),sumV5(0);
var : mav1(0),mav2(0),mav3(0),mav4(0),mav5(0);
var : H1(0),L1(0),H2(0),L2(0),Standard(0),Turn(0);
sumV1 = 0;
sumV2 = 0;
sumV3 = 0;
sumV4 = 0;
sumV5 = 0;
H1 = DayHigh(0);
L1 = DayLow(0);
H2 = DayHigh(0);
L2 = DayLow(0);
for count = 0 to P5{
if count < P1 Then
sumV1 = sumV1+DayClose(count);
if count < P2 Then
sumV2 = sumV2+DayClose(count);
if count < P3 Then
sumV3 = sumV3+DayClose(count);
if count < P4 Then
sumV4 = sumV4+DayClose(count);
if count < P5 Then
sumV5 = sumV5+DayClose(count);
if count < Period1 Then
{
if DayHigh(count) > H1 Then
H1 = DayHigh(count);
if DayLow(count) < L1 Then
L1 = DayLow(count);
}
if count < Period2 Then
{
if DayHigh(count) > H2 Then
H2 = DayHigh(count);
if DayLow(count) < L2 Then
L2 = DayLow(count);
}
}
maV1 = sumV1 / P1;
maV2 = sumV2 / P2;
maV3 = sumV3 / P3;
maV4 = sumV4 / P4;
maV5 = sumV5 / P5;
turn = (H1+L1)/2;
Standard = (H2+L2)/2;
if DayClose(P1-1) > 0 Then
plot1(mav1,"일봉이평1");
if DayClose(P2-1) > 0 Then
plot2(mav2,"일봉이평2");
if DayClose(P3-1) > 0 Then
plot3(mav3,"일봉이평3");
if DayClose(P4-1) > 0 Then
plot4(mav4,"일봉이평4");
if DayClose(P5-1) > 0 Then
plot5(mav5,"일봉이평5");
if DayClose(Period1-1) > 0 Then
plot6(turn,"일봉전환선");
if DayClose(Period2-1) > 0 Then
plot7(Standard,"일봉기준선");
2019-04-30
211
글번호 128271
답변완료
stime 문의
우리나라시간으로 2시 47분에 전략실행차트에서
Hang Seng 지수 5분봉에서 를 차트설정에서 기준시간을 우리나라시간으로 놓고
stime을 하면 18시 20분이 나오는데 어떻게 되는건가요?
시장시간으로 바꾸면 17시 20분이 나옵니다.
시간도 이상하고 분도 이상한데 어떻게 사용하는건가요??
참고로 시간은 Messagelog로 F4누르면서 찍어봤습니다.
또
if MarketPosition == 0 Then
{
MessageLog("시간 %.4f", time[1]);
buy();
}
이렇게 찍었더니 1.#QNB 이라고 찍히고
다음줄에 현재봉 시간이 뜨네요
time[2]로 찍으면 1.#QNB 이 두번 찍히고
현재봉 시간이 뜨구요
이전 봉 시간은 사용불가인가요??
time[1]은 안먹히는건가요??
stime[1]도 안먹히구요
if MarketPosition == 0 Then
{
MessageLog("시간 %.4f", time[1]);
buy();
}
2019-04-30
237
글번호 128270
답변완료
봉겟수 확인
*100봉 안에 현재가가 안 속한 봉겟수 수식좀 알려 주십시요
즉 100봉안에 현재가보다 크거나 작은 봉겟수 입니다
각봉에서 고가와 저가 사이에 현재가격이 없어야 합니다
var1=countif()
2019-04-30
212
글번호 128269
답변완료
수식문의
늘 감사합니다.
두 가격을 사선으로 연결하는 수식
예를들면
1. 286.50에서 283.50로 사선연결, 연장될 수 있는 선으로
2. 만들어진 사선에서 각각 +20틱씩, -20틱씩 복사된 사선 각3개씩
3. data2식으로 만들어 주세요
감사합니다.
2019-04-30
204
글번호 128268
답변완료
62291번 추가 질문 한거 답변 부탁드려요!
제가 최근에 질문 남긴글
답변 잘 봤습니다
그런데 옵션이 1.01
2.12 10.45 등이고
틱가치가 0.01인데 변수를 정수 1로 넣어도
되는건지.. 일단
62291번에 다시 질문해서 글 남겨놨습니다
2019-04-30
210
글번호 128267
답변완료
문의 드립니다.
20이평 위로 돌파 하고 그 다음 봉이 양봉이든 음보이든 20이평 아래로 깨지 않으면 매수
20이평 아래로 깨면 매도 청산완료
20이평 아래로 돌파 하고 그 다음 봉이 양봉이든 음봉이든 20이평 위로 돌파하지 않으면 매도
20이평 위로 돌파하면 매수 청산완료
부탁드립니다.
2019-04-30
199
글번호 128266