커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1553
글번호 230811
답변완료
식 부탁드립니다.
안녕하세요^^
수고 믾습니다.
아래내용 식표현 부탁드립니다.
1. c가 o보다 6이상으로 작다.
c가 o보다 6이하로 작다.
2. 진입 후 첫번째 봉이 c가 o보다 크고 두번째 봉두 c가 o보다 크다.
3. mav1, mav2, mav3, mav4, mav5 가 음봉 속에 모여있다.
mav1, mav2, mav3, mav4, mav5 가 양봉 속에 모여있다
4. mav1, mav2, mav3, mav4, mav5 가 3내에 모여있다.
mav1, mav2, mav3, mav4, mav5 가 3이상 큰곳에 모여있다
미리 감사하다는 말씀 드립니다.^^
2023-03-01
1581
글번호 166802
답변완료
거래시간을 지정 하고 싶습니다^^
안녕하세요^^
수식 문의 드립니다.
1번 수식에 22:00 에서 06:50 까지 거래
2번 수식에 07:00 에서 21:50 까지 거래
수식좀 입혀주시면 감사드리겠습니다.
시간은 가능하다면 변수로 지정해 주시면 감사드리겠습니다^^
1.
Input : shortPeriod(50), longPeriod(500);
value1 = ma(C, shortPeriod);
value2 = ma(C, longPeriod);
# 매수/매도청산
If CrossUP(value1, value2) Then
{
Buy();
}
# 매도/매수청산
If CrossDown(value1, value2) Then
{
Sell();
}
2.
Input : Period(15);
Var : value(0);
value = VR(Period);
# 매수/매도청산
If CrossUP(value, 100) Then
{
Buy();
}
# 매도/매수청산
If CrossDown(value, 300) Then
{
Sell();
}
이 수식에 사용한다기 보다는 요령을 알고 싶으니
가능하다면 주석도 부탁드리고 싶습니다^^
언제나 건강하시고 행복하십시요~!!
2023-03-01
1751
글번호 166801
답변완료
문의드립니다
스토캐스틱 rsi 를 계산할때 스토캐스틱 부분을 slow로 한 식과 fast로 구한식을
따로 2개 구하고 싶습니다
5,5 ,14 ,14로 부탁드립니다
2023-03-01
1652
글번호 166800
답변완료
수식 변경 부탁드립니다
정확하고 빠른 답변에 감사드립니다
키움용 수식입니다
예스트레이더용으로 수식 변경을 부탁드립니다
Bear-Bull 이평돌파선 (1분)
A=Low-eavg(C,Period);
B=High-eavg(C,Period);
a1=crossup(A,0);
a2=crossup(A,-100);
b1=crossdown(B,0);
b2=crossdown(A,100);
Da=if(c>avg(c,39),1,0);
D=valuewhen(1,Da&&(a1 or a2 or b1 or b2),o);
E=wavg(D,2);
F=wavg(E,2);
wavg(F,2);
Period 13
2023-03-01
1147
글번호 166799
답변완료
수정 부탁합니다
아래와 같이 작성하시면
1분봉에서 5분봉 완성봉 시점기준으로 진입하실 수 있습니다.
var1 = TimeToMinutes(NextBarStime)%5;
Condition1 = NextBarSdate != sDate or (NextBarSdate == sDate and var1 < var1[1]);
if Condition1 == true Then
{
진입식
}
알려주신 위 코딩을 적용해서
검증을하면 아래식에서 다음과 같은 오류 내용이 뜨는데요
Condition1 = NextBarSdate != sDate or (NextBarSdate == sDate and var1 < var1[1]);
연산자 앞뒤 두 데이터의 형태가 같아야 합니다 라고 표시됩니다
어데가 틀린건가요?
2023-03-01
1005
글번호 166798
답변완료
수정 부탁드립니다
안녕하세요!
아래 수식을 제가 필요에 의해서 일부 수정을 했는데 정상작동이 안되는것 같습니다!
가격표시도 안되고요!
정상 작동 하도록 검토를 부탁드립니다!
감사합니다!
Input:length(6),종가사용여부(0),파동선두께(2),수치표시(1);
Var:j(0),jj(0),HH(0),LL(0),최종고가(0),최종저가(0),최종꼭지점(""),처리구분(""),
TL1(0),Text1(0),tl2(0);
Array:고[10,4](0),저[10,4](0); // 1:가격,2:Index,3:sDate,4:sTime
#==========================================#
HH = IFF(종가사용여부==1,C,H);
LL = IFF(종가사용여부==1,C,L);
If Index == 0 Then
{
고[1,1] = HH;
저[1,1] = LL;
}
Condition1 = Highest(HH,length) == HH and 최종고가 <> HH;
Condition2 = Lowest (LL,length) == LL and 최종저가 <> LL;
처리구분 = "";
If Condition1 and Condition2 Then // 기간고점과 기간저점 동시 발생
{
If 최종꼭지점 == "저점" Then
{
If 저[1,1] > LL Then 처리구분 = "저점처리";
Else 처리구분 = "고점처리";
}
Else If 최종꼭지점 == "고점" Then
{
If 고[1,1] < HH Then 처리구분 = "고점처리";
Else 처리구분 = "저점처리";
}
}
Else If Condition1 Then 처리구분 = "고점처리";
Else If Condition2 Then 처리구분 = "저점처리";
#==========================================#
If 처리구분 == "고점처리" Then
{
최종고가 = HH; // 신규고점을 체크하기 위해 저장
If 최종꼭지점 == "저점" Then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
고[j,jj] = 고[j-1,jj];
}
}
고[1,1] = HH;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
If 수치표시 == -1 Then
{
Text1 = Text_New(고[1,3],고[1,4],고[1,1],NumToStr(고[1,1],2));
Text_SetStyle(Text1, 2, 1);
Text_SetColor(Text1,BLACK);
}
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,Lgreen);
}
Else If 고[1,1] < HH Then // 1번 고점보다 높은 고가 출현
{
고[1,1] = HH;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
TL_SetEnd(TL2,고[1,3],고[1,4],고[1,1]);
// 시작점은 변동없고 끝점의 위치가 현재 봉으로 연장된 것임
If 수치표시 == -1 Then
{
Text_SetLocation(Text1,고[1,3],고[1,4],고[1,1]);
Text_SetString(Text1,NumToStr(고[1,1],2));
}
}
최종꼭지점 = "고점";
}
#==========================================#
If 처리구분 == "저점처리" Then
{
최종저가 = LL;
If 최종꼭지점 == "고점" then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
저[j,jj] = 저[j-1,jj];
}
}
저[1,1] = LL;
저[1,2] = Index;
저[1,3] = sDate;
저[1,4] = sTime;
TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
If 수치표시 == -1 Then
{
Text1 = Text_New(저[1,3],저[1,4],저[1,1],NumToStr(저[1,1],2));
Text_SetStyle(Text1, 2, 0);
Text_SetColor(Text1,BLACK);
}
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,Lgreen);
}
Else If 저[1,1] > LL then
{
저[1,1] = LL;
저[1,2] = Index;
저[1,3] = sDate;
저[1,4] = sTime;
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
TL_SetEnd(TL2,저[1,3],저[1,4],저[1,1]);
If 수치표시 == -1 Then
{
Text_SetLocation(Text1,저[1,3],저[1,4],저[1,1]);
Text_SetString(Text1,NumToStr(저[1,1],2));
}
}
최종꼭지점 = "저점";
}
#===============피보나치 되돌림=======================#
Array: fr[17,4](0); // 1:비율, 2:값, 3:라인번호, 4:텍스트번호 <= 2차원 배열입니다.
If Index == 0 Then // 첫번째 칼럼에는 피보나치 비율을
{
fr[1,1] = 0;
fr[2,1] = 0.114;
fr[3,1] = 0.236;
fr[4,1] = 0.382;
fr[5,1] = 0.50;
fr[6,1] = 0.618;
fr[7,1] = 0.764;
fr[8,1] = 0.886;
fr[9,1] = 1;
fr[10,1] = 1.236;
fr[11,1] = 1.382;
fr[12,1] = 1.50;
fr[13,1] = 1.618;
fr[14,1] = 2;
fr[15,1] = 2.618;
fr[16,1] = 4.236;
fr[17,1] = 6.845;
}
If 최종꼭지점[1] == "고점" and 최종꼭지점 == "저점" Then // 추세가 바뀔 때 피보나치 라인을 계산
{
for j = 1 to 17
{
If fr[j,3] > 0 Then TL_Delete(fr[j,3]); // 기존의 라인은 지우고
fr[j,2] = 고[1,1] - ((고[1,1] - 저[2,1]) * fr[j,1]); // 피보나치 비율을 곱해서 계산
fr[j,3] = TL_New(고[1,3],고[1,4],fr[j,2],sDate,sTime,fr[j,2]); // 라인을 생성
TL_SetExtRight(fr[j,3],true);
TL_SetColor(fr[j,3],blue);
}
}
Else If 최종꼭지점[1] == "저점" and 최종꼭지점 == "고점" Then
{
for j = 1 to 17
{
If fr[j,3] > 0 Then TL_Delete(fr[j,3]);
fr[j,2] = 저[1,1] + ((고[2,1] - 저[1,1]) * fr[j,1]);
fr[j,3] = TL_New(저[1,3],저[1,4],fr[j,2],sDate,sTime,fr[j,2]);
TL_SetExtRight(fr[j,3],true);
TL_SetColor(fr[j,3],darkred);
}
}
Else // 추세변동이 없으면 기존 피보나치 라인을 연장한다.
{
for j = 1 to 17
{
TL_SetEnd(fr[j,3],sDate,sTime,fr[j,2]);
}
}
for j = 1 to 17 {
If 수치표시 == 1 Then
{
If fr[j,4] > 0 Then Text_Delete(fr[j,4]);
fr[j,4] = Text_New(고[1,3],고[1,4],fr[j,2], " (" + NumToStr(fr[j,1]*100,1) + "%) " + NumToStr(fr[j,2],2));
Text_SetStyle(fr[j,4], 0, 1);
Text_SetColor(fr[j,4], Black);
Text_SetLocation(fr[j,4], sdate, stime, fr[j,2]);
}
If 수치표시 == 1 Then
{
If fr[j,4] > 0 Then Text_Delete(fr[j,4]);
fr[j,4] = Text_New(저[1,3],저[1,4],fr[j,2], " (" + NumToStr(fr[j,1]*100,1) + "%) " + NumToStr(fr[j,2],2));
Text_SetStyle(fr[j,4], 0, 1);
Text_SetColor(fr[j,4], Black);
Text_SetLocation(fr[j,4], sdate, stime, fr[j,2]);
}
}
2023-03-01
860
글번호 166796
답변완료
부탁드립니다.
변수1 = 시간(8시)
1. 금요일, 8시 봉 종가에 매도 진입
2. 월요일, 8시 봉 종가에 매도 청산
2023-03-01
839
글번호 166795
답변완료
문의 드립니다
/*
수고 하십니다.
첨부 그림에서 1st time zone에 표시된 것처럼
분봉차트에서
장 시작후
첫 1봉 ~ N번째 봉의
1봉의 시가/N봉의 종가/1~N봉의 max 고가/1~N봉의 min 저가를
장 시작 ~ +90분간 표시하고 싶습니다.
또
2nd time zone[mboN2 구간] 애서는
1st time zone의 경우에 시고저종가가 표시된 것처럼
2nd time zone의
첫 봉~임의의 지정 N번째 봉 사이의
1봉의 시가/N봉의 종가/1~N봉의 max 고가/1~N봉의 min 저가를
1st time zone 완료 시점부터 다시 +90분간
표시할 수 있게 작성 부탁 드립니다.
수고하세요.
*/
############### 임의의 시장
//MBO
### 1st time zone - 장 시작부터 90분 경과시 까지만 표시로 변경 부탁합니다.
input: mbo시가N1(1);
input: mboN1(5);
var : mboH1(0),mboL1(0),mboO1(0),mboC1(0),mboD1(0),ii(0);
if Bdate != Bdate[1] Then
ii = 0;
ii = ii+1;
if ii==mboN1 Then
{
mboH1 = dayhigh;
mboL1 = daylow;
/// mboO1 = dayopen;
mboC1 = dayclose;
}
if ii==mbo시가N1 Then //시가용
{
// mboH1 = dayhigh;
// mboL1 = daylow;
mboO1 = dayopen;
// mboC1 = dayclose;
}
### 당일 시가
if ii>=mbo시가N1 Then
{
plot1(mboO1,"O1-점5",Black);
}
### 시가~mboN1까지의 고저종가
if ii>=mboN1 Then
{ {
plot2(mboH1,"H1-네모",BLUE);
plot3(mboL1,"L1-네모",RED);
}
if mboC1>mboO1 Then
plot5(mboC1,"C1-일자",Red);
Else
plot5(mboC1,"C1-일자",blue);
}
### 2nd time zone - 장 시작후 90분 경과 이후부터 다음 90분 경과시까지 표시되게 해주세요.
input: mboN2(5);
### 2nd time zone 시가~mboN2까지의 고저종가
value21 = H;
value22 = L;
value23 = C;
### 2nd time zone 시가
value24 = O;
2023-03-01
1318
글번호 166794
답변완료
문의드립니다
일정 기간내 최고거래량과 최저거래량 의 수식을 구하고싶습니다
기간은 9일로 부탁드립니다
2023-03-01
998
글번호 166793