커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7604
글번호 230811
답변완료
매수 미체결시 미체결 확인 함수?
안녕하세요.
현재 슬리피지 때문에 고민하고 있는데요.
그러다가 든 의문입니다. 만약 매수 주문후에, 청산을 하던지 혹은
청산과 동시에 매도를 하는식으로 동작하는 시스템을 사용한다고 가정했을 때,
만약 매수주문은 나왔지만 슬리피지로 인해 실제 체결은 되지 않았고,,,
그런 후에 시간이 흘러 시스템은 청산이나 반대매도 진입이 발생하면,
실제로는 +1 -> 0 이 되거나, +1 -> -1 이 되어야 할텐데, 실제론 매수가
안되었으므로, 0 -> -1 혹은 0 -> -2 가 되는식으로 의도와 다르게 동작이
발생하게 되는지요? 만약 그러한 식으로 되는건지..
혹은 만약 그렇다면 그것을 방지하기 위해, 주문에 대한 체결이 되었는지를
확인하는 함수가 존재하는지요..?
이 부분이 매우 고민이 되어서 그러니, 가능한 상세한 답변 부탁드립니다.
감사합니다.
2012-11-13
309
글번호 56488
처음처럼22 님에 의해서 삭제되었습니다.
2012-11-13
0
글번호 56487
답변완료
27105번 글에 대하여..
27105번 글에 대하여
답변하신 내용대로 작성해서
YesTrader [3202]파워종목검색에서 검색을 해보니까
"데이터가 존재하지 얺습니다(10005)"라는 메세지 창이 뜹니다.
즉,, 검색식에 오류가 있다고 판단됩니다.
10일전부터 40일전사이에 60일평균거래량보다 거래량이 2.5배 많은 종목이
하나도 없다고 하는건 아닌것 같습니다.
재검토 부탁드립니다.
2012-11-13
324
글번호 56486
답변완료
문의드립니다.
가능한지 모르겠으나...
키움지표를 예스지표로 부탁드립니다.
한번에 다 지표로 만들어주셔도 되고
1~5, 1-1~1-2, 2-1~2-2를 따로 만들어주셔도 됩니다.
부탁드립니다.
+++++++++++++++++++++++
1. 중심값
(predayclose()+predayhigh()+predaylow())/3
2. 양봉저항
중심값 = (predayclose()+predayhigh() +predaylow())/3;
G2=2*중심값-predaylow();
H2=중심값+predayhigh()-predaylow();
양봉저항 =(G2+H2)/2
3. 양봉지지
중심값 = (predayclose()+predayhigh() +predaylow())/3;
(중심값+((중심값*2)-predayhigh()) )/2
4. 음봉저항
중심값 = (predayclose()+predayhigh() +predaylow())/3;
((중심값*2-predaylow())+중심값)/2
5. 음봉지지
중심값 = (predayclose()+predayhigh() +predaylow())/3;
((중심값*2-predayhigh())+(중심값+predaylow()-predayhigh()))/2
1-1 전고
(predayhigh()+dayopen())/2;
1-2 . 전저
(predaylow()+dayopen())/2;
2-1. 중심(1)
중심값=(predayclose()+predayhigh()+predaylow())/3;
J2=((중심값*2-predayhigh())+(중심값+predaylow()-predayhigh()))/2;
L2=(predaylow()+dayopen())/2;
K2=(J2+L2)/2
2-2 . 중심(2)
N2=(predayhigh()+dayopen())/2;
중심값=(predayclose()+predayhigh()+predaylow())/3;
G2=2*중심값-predaylow();
H2=중심값+predayhigh()-predaylow();
M2=(G2+H2)/2;
중심=(N2+M2)/2
2012-11-13
578
글번호 56482
답변완료
문의드립니다.
수고많으십니다.
다른증권사hts에는 있는 지표식이 YT4에는 없을경우
새로만들어야 되는데 어떻게 만드는지 도움좀 부탁드립니다.
가령 키움에 RMI라는 지표가 있는데 거기의 수식이
if( (avg(if(c<c(n),(c(n)-c),0),m))<=0,100,
(100-
(100/(1+
(
(avg(if(c>c(n),(c-c(n)),0),m))/
(avg(if(c<c(n),(c(n)-c),0),m))
)
)
)
)
)
이렇게 되어 있습니다.
이걸가지고 YT4에서 쓸수있게 만들려면 어떻게 해야 하는지요?
부탁드립니다.
2012-11-13
354
글번호 56477
답변완료
지표식이랑 시스템식 같이 질문드려요!
안녕하세요 친절한 답변 항상 감사드립니다! 원래 제가 생각했던거와 거의 비슷하게 다 되던거같은데 몇가지만 확인하면 완벽해질꺼같아서 죄송하지만 다시질문드려요!
수식은 길지만 간단하게 질문 두가지 드려요!
하나는 지표식을 종가기준으로 바꾸려합니다!(전에 예시든게 종가기준 지그재그인데
이것도 같은지표식인데 기준값이 다른듯 합니다!)
또 하나는 전에 완성해주신 시스템식에 조건을 추가하려 합니다!
1.밑에 지그재그지표시을 종가기준전환으로 바꿔서 쓰려합니다!
어느부분을 변환해야 하는 지 궁금합니다! 눈으로 봐서는 어느 부분인지 모르겠네요!
#==========================================#
# 지표명 : 지그재그차트
# 작성자 : 수식지왕
# 블로그 : http://yahoosir.blog.me
#==========================================#
Input:상승률(1),하락률(1);
Var:j(0),상승(100),하락(-100),양방향(2),색깔(0),파랑(-1),빨강(1),
기준고(0),기준저(0),기준고Bar(0),기준저Bar(0),추세(0),이중파동(0);
Array:고[20](0),저[20](0),고Bar[20](0),저Bar[20](0);
#==========================================#
# 전고점,전저점 index 증가
#==========================================#
For j = 1 To 19
{
저Bar[j] = 저Bar[j] + 1;
고Bar[j] = 고Bar[j] + 1;
}
#==========================================#
# 이중파동 처리
#==========================================#
If 이중파동 > 0 Then
{
Plot1(이중파동,"Zigzag",Iff(색깔==빨강,RED,BLUE));
이중파동 = 0;
}
#==========================================#
# 최근 고,저 갱신
#==========================================#
If 기준고 <= H || 기준고 == 0 || IsNaN(기준고) == True Then
{
기준고 = H;
기준고Bar = 0;
}
Else
기준고Bar = 기준고Bar + 1;
If 기준저 >= L || 기준저 == 0 || IsNaN(기준저) == True Then
{
기준저 = L;
기준저Bar = 0;
}
Else
기준저Bar = 기준저Bar + 1;
#==========================================#
# 추세방향 결정
#==========================================#
If 기준고 * (1 - (하락률/100)) > H && 기준저 * (1 + (상승률/100)) < L Then
{
추세 = Iff(기준고Bar==기준저Bar,양방향,Iff(기준고Bar>기준저Bar,상승,하락));
}
Else If 기준고 * (1 - (하락률/100)) > H Then 추세 = 하락;
Else If 기준저 * (1 + (상승률/100)) < L Then 추세 = 상승;
#==========================================#
# 추세변화에 따른 변곡점 처리
#==========================================#
If 추세[1] == 상승 && 추세 == 하락 Then
{
For j = 18 DownTo 1 {
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
}
고[1] = 기준고;
고Bar[1] = 기준고Bar;
기준고 = H;
기준고Bar = 0;
기준저 = L;
기준저Bar = 0;
If 고[2] < 고[1] Then 색깔 = 빨강;
If 이중파동[1] > 0 Then 이중파동 = 고[1];
Else plot1(고[1],"Zigzag",Iff(색깔==빨강,RED,BLUE));
}
If 추세[1] == 하락 && 추세 == 하락 &&
고[1] < 기준고 &&
기준고 * (1 - (하락률/100)) > H Then
{
For j = 18 DownTo 1
{
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
고[1] = 기준고;
고Bar[1] = 기준고Bar;
저[1] = 기준저;
저Bar[1] = 기준저Bar;
기준고 = H;
기준고Bar = 0;
기준저 = L;
기준저Bar = 0;
If 저[2] > 저[1] Then 색깔 = 파랑;
plot1(저[1],"Zigzag",Iff(색깔==빨강,RED,BLUE));
If 고[2] < 고[1] Then 색깔 = 빨강;
이중파동 = 고[1];
}
If 추세[1] == 하락 && 추세 == 상승 Then
{
For j = 18 DownTo 1
{
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
저[1] = 기준저;
저Bar[1] = 기준저Bar;
기준저 = L;
기준저Bar = 0;
기준고 = H;
기준고Bar = 0;
If 저[2] > 저[1] Then 색깔 = 파랑;
If 이중파동[1] > 0 Then 이중파동 = 저[1];
Else plot1(저[1],"Zigzag",Iff(색깔==빨강,RED,BLUE));
}
If 추세[1] == 상승 && 추세 == 상승 &&
저[1] > 기준저 &&
기준저 * (1 + (상승률/100)) < L Then
{
For j = 18 DownTo 1
{
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
고[1] = 기준고;
고Bar[1] = 기준고Bar;
저[1] = 기준저;
저Bar[1] = 기준저Bar;
기준저 = L;
기준저Bar = 0;
기준고 = H;
기준고Bar = 0;
If 고[2] < 고[1] Then 색깔 = 빨강;
plot1(고[1],"Zigzag",Iff(색깔==빨강,RED,BLUE));
If 저[2] > 저[1] Then 색깔 = 파랑;
이중파동 = 저[1];
}
If 추세 == 양방향 Then
{
For j = 18 DownTo 1
{
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
고[1] = 기준고;
고Bar[1] = 기준고Bar;
저[1] = 기준저;
저Bar[1] = 기준저Bar;
기준고 = H;
기준고Bar = 0;
기준저 = L;
기준저Bar = 0;
추세 = 추세[1];
If 추세[1] == 상승 Then
{
If 고[2] < 고[1] Then 색깔 = 빨강;
Plot1(고[1],"Zigzag",Iff(색깔==빨강,RED,BLUE));
If 저[2] > 저[1] Then 색깔 = 파랑;
이중파동 = 저[1];
}
Else
{
If 저[2] > 저[1] Then 색깔 = 파랑;
Plot1(저[1],"Zigzag",Iff(색깔==빨강,RED,BLUE));
If 고[2] < 고[1] Then 색깔 = 빨강;
이중파동 = 고[1];
}
}
#==========================================#
# 마무리
#==========================================#
If LastBarOnChart == 1 && 기준고Bar > 0 && 기준저Bar > 0 Then
{
If 추세 == 상승 Then
{
If 고[1] < 기준고 Then 색깔 = 빨강;
Plot1(기준고,"Zigzag",Iff(색깔==빨강,RED,BLUE));
}
Else
{
If 저[1] > 기준저 Then 색깔 = 파랑;
Plot1(기준저,"Zigzag",Iff(색깔==빨강,RED,BLUE));
}
}
종가기준 지표식 변환후
이지표식에서 전에 말씀해주신 시스템 매수매도식을 추가합니다!#==========================================#
# 시스템식 출력
#==========================================#
If ZZ[1] != ZZ Then{
if ZZ < ZZ[1] Then
buy();
if ZZ > ZZ[1] Then
sell();
}
여기서 중요한부분이 연결선이 빨간색일 경우만 매수 매도를 사용하고 싶습니다!
그래서 빨간선 지그재그반전에만 매수 매도를 하고, 파란색을 경우 매수 매도를 안하고자 합니다!( 여기까지 하면 원본하고 거의 똑같은 식이 완성됩니다!- 지그재그식에서 반전부분인 매수반전이 전저점(매수지점)보다 같거나높으면 매수입니다!)
여기서 이 시스템식완성후 추가로 넣을 수 있는 부분이 돌파 즉 전고점(매도반전)을 돌파해서 빨간색으로 전환식 매수 부분을 추가하고 싶습니다!
거의 불가능하다고 생각됐는데 답변을 잘해주셔서 이론을 현실화 하게 되어 너무 감사드립니다! 이게 가능하다면 이 지표식과 시스템식을 이용하여 종목검색식도 가능하시다면 추가로 답변 부탁드리고 싶네요!
항상 좋은 답변 감사드립니다! 잘 부탁드려요!
2012-11-13
417
글번호 56476
답변완료
수식문의
유효거래량=((종가-이전바의종가)의절대가치+1틱)/(특별고가-특별저가)+1틱*거래량 3분봉을봅니다 부탁드립니다
2012-11-13
337
글번호 56474
답변완료
지표식 문의 드립니다.
1. 타종목에서의 직전고점/저점 지표를 SwingHigh, SwingLow를 사용해서 나타낼려고 합니다.
SwingHigh(1,data2(h),5,5,30)
위와 같이 H 부분만 바꿔서 했는데 뭔가 이상한 거 같은데요...
뭐가 잘못되었는지 잘 모르겠습니다.
수정 부탁드리겠습니다.
2. 2번은 혼자 해결하였습니다.
감사합니다.
2012-11-13
355
글번호 56473
답변완료
문의드립니다
1.
변수없이 거래량으로 기준값(평균값)을 알수있을까요?
2.
호가잔량이평의 누적 값도 알수있을까요?
2012-11-13
342
글번호 56472