커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내

안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
프로필 이미지
예스스탁
2026-02-27
7669
글번호 230811
지표
답변완료

종목검색에서 전체종목 결과값

종목검색에서 종목 전체의 결과값을 간단하게라도 구할 수 있는 기능을 차기버전에 추가하는것은 어렵나요? find(검색된 종목 전체 일별수익율), find(검색된 종목 전체 평균), find(검색된 종목 전체 누적) 같은 기능을 넣을려면 복잡한지요?
프로필 이미지
행복충전
2012-03-21
326
글번호 49165
지표
답변완료

간단한 질문.

1. 시스템 적용시 매매 가격에서 상대호가 현재가+-1 등이 아닌 수식으로 +- 1틱 2틱을 적용 하는 식과 적용 방법을 여쭈어 봅니다. onclose,atmarket,atstop,atlimit 주문 형태로 여쭈어 봅니다. 2. BarsSinceExit(1) > 24 로 이전 거래와의 텀을 주려 하였으나 실시간 챠트에서 실행에서 봉개수 제한으로 인해 첫 거래가 (즉 barssinceexit 기준이 없으므로) 없으므로 계속 신호가 발생 하지 않더군요. barssinceexit 이전 거래와 간격을 24봉으로 주는 식을 부탁드립니다.
프로필 이미지
sjpapa
2012-03-21
359
글번호 49164
시스템
답변완료

수식 부탁 드립니다.

수고 많으십니다. 다음식 부탁 드립니다. Band width(60,20)에서 매도: Band Width가 고개를 들어올릴때 매도 매수: Band Width가 고개를 숙일때 매수 Band%(60,20)에서 매수:Band%가 50을 상향시 매수 매도:Band%가 50을 하향시 매도 건승을 기원합니다.
프로필 이미지
회원
2012-03-21
380
글번호 49163
시스템
답변완료

왜 역매도 진입이후 바로 청산이 나오는 건가요?

안녕하세요.. 역매도 들어가고 바로 그봉에서 청산을 해버리네여.. input : len(3.2), len1(0.34), len2(0.07); var : cnt(0), cond1(False), cond2(False); if dayopen > DayClose(1) Then{ ## 전종가보다 오픈가격이 높으면 var1 = (DayHigh(1)+DayClose(1)+DayLow(1)*2)/2 - daylow(1); var2 = (DayHigh(1)+DayClose(1)+DayLow(1)*2)/2 - DayHigh(1); } if DayOpen < DayClose(1) then{ ##전종가보다 오프가격이 낮으면 var1 = (DayHigh(1)*2+DayClose(1)+DayLow(1))/2 - daylow(1); var2 = (DayHigh(1)*2+DayClose(1)+DayLow(1))/2 - DayHigh(1); } if DayOpen == DayClose(1) then{ ##전종가보다 오프가격이 같으면 var1 = (DayHigh(1)+DayClose(1)*2+DayLow(1))/2 - daylow(1); var2 = (DayHigh(1)+DayClose(1)*2+DayLow(1))/2 - DayHigh(1); } cond1 = false; cond2 = false; for cnt = 0 to 10{ if EntryDate(cnt) == sdate and MarketPosition(cnt) == 1 Then Cond1 = true; if EntryDate(cnt) == sdate and MarketPosition(cnt) == -1 Then Cond2 = true; } if stime < 150000 then { if cond1 == False then{ if dayopen > var1 and MarketPosition != 1 Then{ buy("매수1", atstop, dayopen+(var1-var2)*len1); } If DayOpen <= var1 and DayOpen>=var2 Then{ if daylow < var2 and high <var2+(var1-var2)*len1 Then{ buy("역매수",atstop, var2+(var1-var2)*len2); } } if dayopen < var2 Then{ buy("매수4", atstop, var2); } } if cond2 == False and MarketPosition != -1 then{ if dayopen > var1 then{ sell("매도1",atstop, var1); } if DayOpen <= var1 and DayOpen >= var2 Then { if DayHigh>var1 and low < var1- (var1-var2)*len1 then { sell("역매도", AtStop, var1-(var1-var2)*len1); } } if dayopen <var2 Then{ sell("매도", atstop, dayopen-(var1-var2)*len1); } } } if MarketPosition <>0 Then { exitlong("매수청산", atstop, Highest(H,BarsSinceEntry+1)-atr(20)*len); exitshort("매도청산", atstop, Lowest(L,BarsSinceEntry+1)+atr(20)*len); } SetStopEndofday(150400);
프로필 이미지
rlaxoeh
2012-03-20
358
글번호 49162
시스템
답변완료

거듭 감사드립니다~

바쁘 실텐데 번거롭게 해드려서 거듭 감사 인사 올립니다. == 꾸 뻑 ==
프로필 이미지
비월검파
2012-03-20
368
글번호 49159
지표

river 님에 의해서 삭제되었습니다.

프로필 이미지
river
2012-03-20
2
글번호 49156
지표
답변완료

감사합니다

감사합니다. === 꾸 뻑 ===
프로필 이미지
비월검파
2012-03-20
361
글번호 49155
지표
답변완료

다른점..

안녕하세요.. 한방향으로 한번만 진입하도록 제가 포지션이 있으면 카운터를 넣어서 해보려고 했는데 가르쳐 주신 방법과 다르네요.. 카운터를 넣어서 하는방법이 왜 다른결과 가 나오는지 첫번째와 두번째 시스템 비교부탁 드립니다. 첫번째 input : len(3.2), len1(0.34); var : cond1(False), cond2(False), ccc1(0), ccc2(0); if dayopen > DayClose(1) Then{ ## 전종가보다 오픈가격이 높으면 var1 = (DayHigh(1)+DayClose(1)+DayLow(1)*2)/2 - daylow(1); var2 = (DayHigh(1)+DayClose(1)+DayLow(1)*2)/2 - DayHigh(1); } if DayOpen < DayClose(1) then{ ##전종가보다 오프가격이 낮으면 var1 = (DayHigh(1)*2+DayClose(1)+DayLow(1))/2 - daylow(1); var2 = (DayHigh(1)*2+DayClose(1)+DayLow(1))/2 - DayHigh(1); } if DayOpen == DayClose(1) then{ ##전종가보다 오프가격이 같으면 var1 = (DayHigh(1)+DayClose(1)*2+DayLow(1))/2 - daylow(1); var2 = (DayHigh(1)+DayClose(1)*2+DayLow(1))/2 - DayHigh(1); } if date <> date[1] then{ ccc1 = 0; ccc2 = 0; } if stime < 150000 then { if ccc1<1 then{ if dayopen > var1 Then{ buy("매수1", atstop, dayopen+(var1-var2)*len1); if MarketPosition <> 0 then ccc1 = ccc1+1; } if dayopen < var2 Then{ buy("매수4", atstop, var2); if MarketPosition <> 0 then ccc1 = ccc1+1; } } if ccc2 <1 then{ if dayopen > var1 then{ sell("매도1",atstop, var1); if MarketPosition <> 0 then ccc2 = ccc2+1; } if dayopen <var2 Then{ sell("매도", atstop, dayopen-(var1-var2)*len1); if MarketPosition <> 0 then ccc2 = ccc2+1; } } } if MarketPosition <>0 Then { exitlong("매수청산", atstop, Highest(H,BarsSinceEntry+1)-atr(20)*len); exitshort("매도청산", atstop, Lowest(L,BarsSinceEntry+1)+atr(20)*len); } SetStopEndofday(150400); 두번째 input : len(3.2), len1(0.34); var : cnt(0), cond1(False), cond2(False); if dayopen > DayClose(1) Then{ ## 전종가보다 오픈가격이 높으면 var1 = (DayHigh(1)+DayClose(1)+DayLow(1)*2)/2 - daylow(1); var2 = (DayHigh(1)+DayClose(1)+DayLow(1)*2)/2 - DayHigh(1); } if DayOpen < DayClose(1) then{ ##전종가보다 오프가격이 낮으면 var1 = (DayHigh(1)*2+DayClose(1)+DayLow(1))/2 - daylow(1); var2 = (DayHigh(1)*2+DayClose(1)+DayLow(1))/2 - DayHigh(1); } if DayOpen == DayClose(1) then{ ##전종가보다 오프가격이 같으면 var1 = (DayHigh(1)+DayClose(1)*2+DayLow(1))/2 - daylow(1); var2 = (DayHigh(1)+DayClose(1)*2+DayLow(1))/2 - DayHigh(1); } cond1 = false; cond2 = false; for cnt = 0 to 10{ if EntryDate(cnt) == sdate and MarketPosition(cnt) == 1 Then Cond1 = true; if EntryDate(cnt) == sdate and MarketPosition(cnt) == -1 Then Cond2 = true; } if stime < 150000 then { if cond1 == False then{ if dayopen > var1 and MarketPosition != 1 Then{ buy("매수1", atstop, dayopen+(var1-var2)*len1); } if dayopen < var2 Then{ buy("매수4", atstop, var2); } } if cond2 == False and MarketPosition != -1 then{ if dayopen > var1 then{ sell("매도1",atstop, var1); } if dayopen <var2 Then{ sell("매도", atstop, dayopen-(var1-var2)*len1); } } } if MarketPosition <>0 Then { exitlong("매수청산", atstop, Highest(H,BarsSinceEntry+1)-atr(20)*len); exitshort("매도청산", atstop, Lowest(L,BarsSinceEntry+1)+atr(20)*len); } SetStopEndofday(150400);
프로필 이미지
rlaxoeh
2012-03-20
452
글번호 49154
시스템

육각파동 님에 의해서 삭제되었습니다.

프로필 이미지
육각파동
2012-03-20
20
글번호 49146
지표