커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7706
글번호 230811
답변완료
최저가 지표
현재일 기준 120일 동안의 최저가 표시 지표 부탁합니다
2011-09-01
612
글번호 42366
답변완료
검색식 부탁합니다
주가가 현재일 기준 120일 동안의 최저가를 찾고
현재일 기준 50일 이상 최저가를 하락치 않고 지키는 종목 검색
2011-09-01
531
글번호 42365
답변완료
시스템 문의..
안녕하세요.. 질문드립니다..
1. 예스트레이더 랭기지는.. 매번 새로운 봉이 들어올때마다 변수값 초기화되고, 계산을 전체적으로 새롭게 다시하는건가요??(기존에 변수에 저장해놓은 데이터는, 오랜 기간이 지나거나.. 다음 봉이 들어오면 초기화되나요?)
2. 만약 CrossUp이 발생한날 특정 변수에 특정한 수치값을 저장해놓고..
일정 기간후에 다시 CrossUP이 발생할경우.. 지난번 CrossUP이 발생했을때의 저장해놓은 변수속 특정 수치값과, 이번 CrossUP이 발생했을때의 수치를 비교해서 매수나 매도가 가능하도록 매매로직을 구현했더니.. 동작이 안하는것같네요..
3. 만약 변수에 저장된값이 오랜기간 유지되지 않는다면..두번째 CrossUP이 발생했을때.. 역으로 추적해서.. 첫번째 CrossUP이 발생했을때의 수치값을 비교하도록 로직을 다시 구현해야 하나요??
예를들어..
If CrossUp(c, ma(c,5)) Then
value1 = c;
If value1 > ma(c,20) Then
buy();
=> 만약 위와같이.. 종가가 5이평을 크로스업 했을때, value1에 종가값을 대입하면..
이 value1변수에는 종가값이 언제까지 들어있게되나요?? 다음봉이 들어오면 사라지나요?
이렇게 첫번째 크로스업때의 value1에 저장된 종가값과, 매번 새로운 봉의 20이평의 값을 비교해서.. 20이평을 초과하는 순간 매수하도록 짜는 이러한 로직은 실현될수 없는건가요?? 그렇다면 이번 크로스업이 발생했을때의 특정값 수치와 직전 크로스업때의 특정값 수치를 비교해서 매수,매도가 가능하도록은 불가능한가요? ( 위수식은 그냥 예를든것이지..저거 사용하는거 아니니까 저걸 해결해주려고 하지마세요... ^^)
어제 새벽까지 이것때문에 씨름하다가...;;; 휴.. 답변좀 주세요..
2011-09-01
438
글번호 42364
관리자에 의해서 삭제되었습니다.
2011-09-01
35
글번호 42363
황토가마 님에 의해서 삭제되었습니다.
2011-09-01
221
글번호 42362
답변완료
문의드립니다.
3분봉에서
분봉의 거래량이 전일일봉의 거래량의 5%이상일때
그 분봉의 고점을 A , 저점을 B라고 한다.
(다시 전일일봉의 거래량의 5%를 넘는 분봉거래량이 나오기 전에는
이 A와 B는 계속 유효하다)
A와 B가 20개봉동안 바뀌지 않은 종목을 검색
부탁드립니다.
2011-08-31
524
글번호 42361
답변완료
기준선 도달 시점에 스탑으로 매매할순 없을까요?
각기준선에 도달하면 바로 매매가 되게 할수있나요?
매수의 경우에 포지션이 없는 상태에서 c[1]가 매수기준선 아래 였을경우, 매수기준선에 도달하면 매수기준선에서 매수 이렇게 말입니다.
아래는 제가 돌파를 기준으로 작성해본 식입니다.
If Crossup(C, 매수기준선) Then
buy();
If CrossDown(C, 매도기준선) Then
sell();
if CrossDown(C, 매수청산기준선) Then
ExitLong();
if Crossup(C, 매도청산기준선) Then
ExitShort();
그리고 시스탬적용시점 날짜 이전에 보유하고 있는 포지션은 무시하고 전략을 차트에 적용시킬순 없나요? 당일청산 시스템이 아니다보니 그런지..
아애 무포상태, 차트의 첫날이 매매첫날이라고 판단하고 적용시킬수있는 시스템식을 좀 알려주세요.
2011-08-31
513
글번호 42360
답변완료
담당자님 너무 고맙습니다만...
장문의 글 너무 잘 읽었습니다.
저도 방금 집에 도착하였습니다. 오랜만에 올라갔는데 시간이 없어서 구경도 못하고 왔네요 ㅎㅎ
어제 박상우 선생님에게 몇가지 코치를 받았는데요 그래도 무슨말인지 잘 모르겠더라고요...ㅎㅎ
님의 답글 중에
#전고점과 손절라인이 차이가 현재가의 3%이상이면
(전고점-손절선가격)/4 + 손절라인을 상향돌파하면 매수
If AA >= CC[1]*1.03 and crossup(C,((AA-CC)/4)+CC) Then
buy("b1");
라고 했는데
제 질문은
전고점과 손절라인이 차이가 현재가의 3%이상이면 (전고점가격-손절선가격)/4 + 손절라인가격에 매수한다 였습니다.
그래서 제가 수식을 만들어 봤는데
If AA >= CC[1]*1.03 Then
buy("b1",AtStop,(AA-CC)/4)+CC);
맞는지요.....
그리고,
님의 답글중에,,손절매에서
#매수진입후 매수진입봉 기준CC값-2틱 이하 시세 내려가면 청산
if MarketPosition == 1 Then{
Condition2 = false;
exitlong("bx",AtStop,CC[BarsSinceEntry]-PriceScale*2);
그런데 제 질문은
매수진입후 매수진입봉 기준CC값이하로 내려가면 CC값에서 2호가 밑으로 매도주문한다.
이에 대한 수식은 어떻게 되나요
위의 것이 맞나요?
*그런데요 수식을 검증한 뒤에 예스트레이더 3.1을 띄어놓고 마우스 오른쪽 클릭하여 적용에서 시스템트레이딩에서 저장했던것 선택하면 되잖아요....맞죠?
그런데 왜 안되죠?
분명히 전고점 돌파하면 매수화살표가 떠야하는데,,, 아무렇게나 떠요
제가 일부러 수치를 100으로만 설정하여서 어제 12시30분부터 보이게 했거든요...
# 제가 9월 5일에도 제가 교육신청해 놨는데 그때 담당자님 뵐수 있나요?
자꾸 귀찮게 해드려서 죄송합니다.
저에게는 이렇게 좋은 시스템이 있다는것을 얼마전에 알게 되었거든요.
꼭 좀 수식을 만들어서 적용하고 싶은데...
정말 간절한데....
2011-08-31
632
글번호 42359
답변완료
만기일이후의 저가
옵션에서 만기일 이후의 월물저가를 표시하는 지표를 구현하고 싶습니다.
아래의 식은 만기이전의 저가까지 표시가 되서....
만기일 이전의 저가는 제외하고 만기일 이후의 저가만 따로 표시하고 싶습니다
양옵션을 교차차트 형태로 만들어서 data1은 콜, data2는 풋...
감사합니다.
var : lowest1(0,data1),lowest2(0,data2),prelowest1(0,data1),prelowest2(0,data2);
var : PreLfm6(0,data1),PreLfm7(0,data2),
var: cond(false,data1),va0(0,data1),va1(0,data1),va2(0,data1),va3(0,data1),pred1(0,data1),pred2(0,data2);
va0 = int(date/10000);//년도
va1 = int(date/100)-int(date/10000)*100;//달
va2 = data1(date - int(date/100)*100); //일
va3 = data1(DayOfWeek(date)); //요일
if data1(index==0) Then
lowest1 = data1(L);
if data1(index>0) Then{
if data1(L) < lowest1 Then
lowest1 = data1(L);
}
if data2(index==0) Then
lowest2 = data2(L);
if data2(index > 0) Then{
if data2(L) < lowest2 Then
lowest2 = data2(L);
}
#전일까지의 data1,data2 최저가중 작은값
PreLfm6 = preLowest1;
PreLfm7 = preLowest2;
plot60(preLfm6,"pl6L",LGREEN,2);
plot61(preLfm7,"pl7L",PINK,2);
2011-08-31
512
글번호 42358