커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4503
글번호 230811
답변완료
문의드립니다
5년간 매년 주식의 고점과 저점을 계산하려 합니다.
즉 2015년 저점과 고점부터 현 2019년까지 저점과 고점을 각각 구하여 고점의 평균과 저점의 평균를 구하려 합니다, 관련 식을 어떻게 구하는지 알려주셨으면 합니다. 감사합니다.
2019-03-12
290
글번호 126968
답변완료
수식 문의 드립니다.
지난번 알려주신 아래 수식에서
매수 시 투입금액에 조건을 추가하고 싶습니다.
매수 시 투입금액 계산 시 총자산을 넘어가는 경우 오류가 발생할 수
있을 거 같아 이 경우엔 총자산 100프로까지만 투입하는 조건을 추가하고 싶네요.
감사합니다.
안녕하세요
예스스탁입니다.
총자산은 수식에서 알수 없습니다.
직접 값을 지정해 주셔야 합니다.
input : n(13),총자산(100000000);
var : cnt(0),sum(0),avgnoise(0),sum1(0),mm(0);
Array : mav[14](0);
sum = 0;
sum1 = 0;
for cnt = 1 to n
{
      sum = sum + (1-abs(dayopen(cnt)-DayClose(cnt))/(DayHigh(cnt)-DayLow(cnt)));
      sum1 = sum1+DayClose(cnt);
      mav[cnt] = sum1/cnt;
}
avgnoise = sum/n;
var1 = 0;
for cnt = 3 to n
{
    if C > mav[cnt] Then
          var1 = var1+1;
}
if MarketPosition == 0 and NextBarSdate == sdate Then
{
      mm = (총자산*0.02)/(((DayHigh(1)-DayLow(1))/c)*var1);
      buy("b",AtStop,dayopen+(DayHigh(1)-DayLow(1))*avgnoise,Floor(mm/c));
}
if MarketPosition == 1 and NextBarSdate != sdate Then
      ExitLong("bx",AtMarket);
즐거운 하루되세요
> 유로티 님이 쓴 글입니다.
> 제목 : 수식 작성 도움 부탁 드립니다.
> 안녕하세요.
시스템 매매 시작해 보고자 하는데, 수식 작성 도움 부탁 드리겠습니다.
투입금액 비중 같은 부분은 작성이 가능한지 잘 모르겠는데, 확인 한번 부탁 드려요.
감사합니다.
- 매수 : 당일 실시간 가격 > 당일 시가 + (전일 고가 - 전일 저가) * 13일 평균 노이즈 비율
         단, 1일 1회만 진입
  ※ 노이즈 비율 = 1-abs(시가-종가)/(고가-저가)
- 매수 시 투입금액 : 총 자산 * 0.02/전일 변동성 * 1~13일 이동평균선스코어
  ※ 전일 변동성 = (전일 고가 - 전일 저가)/현재가
  ※ 이동평균선스코어 
     3~13일의 11개 이동평균선 후 현재가가 각 일별 이동평균선을 넘으면 1/11점씩 부여
     예) 3일 이동평균선을 넘으면 1/11점,
         3, 4일 이동평균선을 넘으면 2/11점
     즉, 현재가가 모든 이동평균선을 넘으면 이동평균선스코어는 1점,
         현재가가 모든 이동평균선을 넘지 못하면 이동평균선스코어는 0점 부여
- 매도 : 다음날 시가
2019-03-12
314
글번호 126967
답변완료
지표수정 문의 드려요
수식
e=(highest(high,9)+lowest(low,9)+highest(high,26)+lowest(low,26))/4;
f=(highest(high,52)+lowest(low,52))/2;
g=(e(25)+f(25))/2;
지표조건
기간1 75
이걸 예스트레이더에 넣을수 있게 변환 해주세요
2019-03-12
286
글번호 126966
답변완료
수식 수정부탁드립니다.
아래의 조건식에서 진입후 청산시에 동일 시점에 청산과 진입이 동시에 신호가 나올시 청산만 신호가 발생하도록 부탁드립니다.
예를 들어 50.02에 매수 신호에 진입했다가 청산신호가 50.10에 나오고 매수 진입신호가
곧바로 50.10에 동시에 나올시에 매수진입은 되지 않도록 부탁드립니다.
if MarketPosition == 0 and T == 1 and CrossUP(value1, value2) then
buy("매수1",AtMarket);
if MarketPosition == 1 Then
{
if T == -1 and 추세[0] == "매도추세" Then
Exitlong("추세전환(-)",AtMarket);
if T == 1 and 추세[0] == "매도추세" Then
Exitlong("bx1",Atlimit,EntryPrice+PriceScale*50);
if T == -1 and 추세[0] == "매수추세" Then
Exitlong"bx2",Atlimit,EntryPrice+PriceScale*50);
}
if MarketPosition == 0 and T == -1 and CrossDown(value1, value2) then
sell("매도1",AtMarket);
if MarketPosition == -1 Then
{
if T == 1 and 추세[0] == "매수추세" Then
ExitShort("추세전환(+)",AtMarket);
if T == -1 and 추세[0] == "매수추세" Then
ExitShort("sx1",Atlimit,EntryPrice-PriceScale*50);
if T == 1 and 추세[0] == "매도추세" Then
ExitShort("sx2",Atlimit,EntryPrice-PriceScale*50);
}
2019-03-12
286
글번호 126962
답변완료
수정
61675 그물망 50개 수정잘부탁드립니다
2019-03-12
265
글번호 126961
답변완료
수식 문의 드립니다.
BarsSinceExit 함수를 사용해서 청산 이후 재진입을 제어할려고 하는데 Buy 구문과 Sell 구문에 동시에 추가하면 로직이 작동되지 않습니다.
한 쪽에 추가하면 잘 돌아 가는데 로직에 문제가 있는건가요?
2019-03-12
264
글번호 126957
답변완료
문의드립니다.
늘 수고하십니다.
목표수익을 설정했는데 부분적으로 신호가 나타나질않은것은 어떤 연유인지 궁금합니다.
input : period(75);
if disparity(period) < 97.90 and C > O then
buy();
if disparity(period) > 101.5 and C < O then
ExitLong();
if disparity(period) < 97.82 and C > O then
buy();
if disparity(period) > 100.90 and C < O then
ExitLong();
2019-03-12
281
글번호 126956
답변완료
주석요청
안녕하세요?
주석요청드립니다.
감사합니다.
input : vP1(5);
Vars : SP(0), TickSize(0), vM1(0),v99(0);
SP = MarketPosition;
TickSize = PriceScale;
vM1 = ma(C, vP1);
If CrossUp(C, vM1) Then Buy("B");
If CrossDown(C, vM1) Then Sell("S");
If SP[1] <> SP And SP <> 0 Then v99 = CurrentContracts;
input : ExitP(5);
If CurrentContracts == v99 Then
Begin
If SP == 1 And C < EntryPrice + (ExitP * TIckSIze) Then ExitLong("EXL", AtLimit, EntryPrice + (ExitP * TIckSize));
If SP == -1 And C > EntryPrice - (ExitP * TIckSIze) Then ExitShort("EXS", AtLimit, EntryPrice - (ExitP * TickSIze));
End;
input : droptick(20),minprotick(50);
SetStopTrailing(droptick * TickSize,minprotick * TickSize,PointStop);
2019-03-12
259
글번호 126955
답변완료
수식 변환 부탁드립니다
###매수###
A=(SMI = eavg(eavg(c-(highest(H,g) + lowest(L,g))*0.5,r),s) * 100/
(0.5 * eavg(eavg(highest(H,g)-lowest(L,g),r),s)));
if(A>=A(1),A,0) and tema(c,period2)
>= (highest(high,shortPeriod)+lowest(low,shortPeriod))/2
###매도###
A=(SMI = eavg(eavg(c-(highest(H,g) + lowest(L,g))*0.5,r),s) * 100/
(0.5 * eavg(eavg(highest(h,g)-lowest(L,g),r),s)));
if(A<=A(1),A,0) and tema(c,period2)
<= (highest(high,shortPeriod)+lowest(low,shortPeriod))/2
========================================================================
g 100
r 5
s 100
period2 2
shortPeriod 76
수식 변환 부탁드립니다
2019-03-12
275
글번호 126954