커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4382
글번호 230811
답변완료
완성 된 수식을 부탁 합니다.
포지션 진입이
1.고점꼮지점의 값과 저점꼮지점 값의 차이가 2 포인트 미만이면
If 최종꼭지점 == "고점" and 최종꼭지점[1] != 최종꼭지점 and 저[1,1] > 저[2,1] Then
buy();
If 최종꼭지점 == "저점" and 최종꼭지점[1] != 최종꼭지점 and 고[1,1] < 고[2,1] Then
sell();
하고
2..고점꼮지점의 값과 저점꼮지점 값의 차이가 2 포인트 이상이면
If 최종꼭지점[1]> 최종꼭지점 Then
buy();
if 최종꼭지점[1] < 최종꼭지점 Then
sell();
하도록
아래의 수식에 추가하여 완성하여 주시면 대단히 감사 하겠습니다.
Input:상승전환가격(1),하락전환가격(1),종가사용여부(1),파동선두께(1),수치표시(1);
Var:j(0),jj(0),HH(0),LL(0),hiBar(0),loBar(0),최종꼭지점(""),처리구분(""),
TL1(0),Text1(0);
var: 차이값(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,2] = 0;
고[1,3] = sDate;
고[1,4] = sTime;
저[1,1] = LL;
저[1,2] = 0;
저[1,3] = sDate;
저[1,4] = sTime;
}
If Index > 0 Then // Index가 0일때는 이전 봉이 없으므로 Index가 1일때부터 1씩 증가
{
hiBar = hiBar + 1; // 최고점을 찍은 고[저]가의 위치를 저장 해놓기 위해 봉번호를 카운트한다.
loBar = loBar + 1;
}
If HH[hiBar] < HH Then hiBar = 0; // 현재 봉이 최고가이면 봉번호를 0으로 초기화
If LL[loBar] > LL Then loBar = 0;
Condition1 = 저[1,1] + 상승전환가격 < HH and hiBar == 0;
// 최소변동률지그재그와 비교했을 때 비율 대신 가격을 사용한 게 다르다.
// 전저점에서 전환가격만큼 더한 값보다 고가가 크다면 추세가 변한 것으로 보고 신규 고점으로 인식
Condition2 = 고[1,1] - 하락전환가격 > LL and loBar == 0;
// 전고점에서 전환가격만큼 뺀 값보다 저가가 작다면 추세가 변한 것으로 보고 신규 저점으로 인식
처리구분 = "";
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
{
If 최종꼭지점 == "저점" Then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
고[j,jj] = 고[j-1,jj];
}
}
고[1,1] = HH[hiBar];
고[1,2] = Index - hiBar;
고[1,3] = sDate[hiBar];
고[1,4] = sTime[hiBar];
hiBar = -1;
// 다음 봉의 고가가 기준 고가로 인식되려면 hiBar 값이 0이 되어야 한다.
// 봉이 바뀔 때마다 hiBar의 값을 1씩 증가시키므로 다음 봉의 hiBar 값은 0이 된다.
loBar = -1;
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);
}
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,Red);
}
Else If 고[1,1] < HH[hiBar] Then // 1번 고점보다 높은 고가 출현
{
고[1,1] = HH[hiBar];
고[1,2] = Index - hiBar;
고[1,3] = sDate[hiBar];
고[1,4] = sTime[hiBar];
hiBar = -1;
loBar = -1;
TL_SetEnd(TL1,고[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
{
If 최종꼭지점 == "고점" Then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
저[j,jj] = 저[j-1,jj];
}
}
저[1,1] = LL[loBar];
저[1,2] = Index - loBar;
저[1,3] = sDate[loBar];
저[1,4] = sTime[loBar];
hiBar = -1;
loBar = -1;
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);
}
TL_SetSize(TL1,파동선두께);
TL_SetColor(TL1,Blue);
}
Else If 저[1,1] > LL[loBar] Then
{
저[1,1] = LL[loBar];
저[1,2] = Index - loBar;
저[1,3] = sDate[loBar];
저[1,4] = sTime[loBar];
hiBar = -1;
loBar = -1;
TL_SetEnd(TL1,저[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));
}
}
최종꼭지점 = "저점";
}
#===========================================#
#===========================================#
# 추가되는 수식을 요기 아래에 작성하여 주십시요 !
2017-05-18
125
글번호 109645
답변완료
지표 요청
* 많은 도움 고맙습니다.
* 키움 지표 변환좀 부탁 드립니다. 2건 입니다 (교차하는 그래프 입니다)
요청1) 수식
aa= c/c(Period1)*100 ;
ma(aa,period2)
지표
Period1 = 5
Period2 = 3
요청2) 수식1
eavg(biwave(Period1,Period2,sto1,sto2),short) -
eavg(biwave(Period1,Period2,sto1,sto2),long)
수식2
B1=if(eavg(C,12)-eavg(C,26) >eavg(eavg(C,12)-eavg(C,26),9), 1,-1);
B2=if(C > avg(C, Period1), 1, -1);
B3=if((C - C(period2)) / C(period2) * 100 > 0, 1, -1) ;
B4=if(eavg((C-lowest(L, sto1)) / (highest(H, sto1) -
lowest(L, sto1)) * 100, sto2) > 50, 1, -1);
A=B1+B2+B3+B4;
eavg(A,signal)
관련 지표 함수
period1 = 20
period2 = 20
sto1 = 5
sto2 = 3
short = 12
long = 26
signal = 10
* 고맙습니다 강사님^^
2017-05-18
154
글번호 109644
비상8 님에 의해서 삭제되었습니다.
2017-05-17
2
글번호 109639
답변완료
시스템 신호 문의 드립니다.
단순 5,10 이평을 가지고 크로스 시 신호 발생하게 끔 하고자 하는데... 10이평의 지표속성에서 차트표시에 보면 이동에서 수평을 변경할 수 있는데.. 그 변경한 수치가 신호 발생 시 같이 영향을 주었으면 합니다.
감사합니다.
2017-05-17
136
글번호 109632
답변완료
이런 식의 기능이 있는지, 그리고 있다면 어떻게 구현할 수 있는 지 궁금합니다.
대신증권을 보면 조건 검색된 종목들을 자동으로 매수 매도하는 기능이 있습니다.
예스트레이더도 비슷한 기능이 있는 지요?
그리고 그렇게 만드려면 어떻게 해야 합니까?
예를 들어서 코스피 코스닥 가운데 1% 이상 상승한 종목을 검색하고 자동검색을 해놓는 동안 해당 종목을 10만원 치 매수한다. 이렇게 수식을 짜려면 어떻게 해야 하는지요?
2017-05-17
148
글번호 109621
답변완료
ask
아래 건 거래횟수 조절을 위한 변수입력 기능 추가바랍니다.
***
input : N(1),pt(0.55);
var : T1(0);
#시초가 터치봉 시간
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and H >= dayopen and H[1] < DayOpen) or
(Bdate == Bdate[1] and L <= dayopen and L[1] > DayOpen) Then
T1 = TimeToMinutes(stime);
if TimeToMinutes(stime) <= T1+n Then{
if MarketPosition <= 0 and C >= dayopen+pt Then
buy();
if MarketPosition >= 0 and C <= dayopen-pt Then
sell();
}
2024-09-02
113
글번호 109620
탄탄시스템 님에 의해서 삭제되었습니다.
2017-05-17
26
글번호 109618
답변완료
종목검색
1일전 거래대금 15억 이상
이동평균이격도 종가5일선 종가 20일선 15%이내 근접1회이상
이동평균이격도 종가5일선 종가 60일선 20%이내 근접1회이상
이동평균이격도 종가5일선 종가 120일선 30%이내 근접1회이상
이동평균이격도 종가20일선 종가 60일선 30%이내 근접1회이상
주가범위 종가 2900원 이상
거래량비율 10봉 평균 대비 0봉전 130%이상
주가이동평균 0봉전 종가 5일 이동평균>=종가20일 이동평균 1회이상
주가이동평균 0봉전 종가 5일 이동평균>=종가120일 이동평균 1회이상
코스닥
부탁드립니다
2017-05-17
115
글번호 109617
2wnwn 님에 의해서 삭제되었습니다.
2017-05-17
8
글번호 109616