커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식 요청드립니다.

안녕하세요. 아래조건으로 수식 작성 요청드립니다. 1) 매수진입 조건 ㅡ 현재가격(예 50.00) 아래에 있는 직접 입력한 A가격(예시 49.50)에서 첫번째 터치시 매수 매수 청산후 두번째 진입은 직접 입력한 B가격(예시 49.00)에서 첫번째 터치시 매수 2) 매도진입 조건 ㅡ 현재가격(예 50.00) 위에 있는 직접 입력한 C가격(예시 50.50)에서 첫번째 터치시 매도 매도 청산후 두번째 진입은 직접 입력한 D가격(예시 51.00)에서 첫번째 터치시 매도 3) 매수청산 조건 ㅡ 2계약 진입후 첫번째 계약은 20틱 청산. 두번째 계약은 40틱 청산 4) 매도청산 조건 ㅡ 2계약 진입후 첫번째 계약은 20틱 청산. 두번째 계약은 40틱 청산 5) 익절 조건 ㅡ 매수/매도 청산 조건과 동일 6) 손절 조건 ㅡ 기본 20틱. 매수진입후 1차 20틱 청산후 매수 진입후 최고가 대비 20틱 하락시 청산. 매도진입후 1차 20틱 청산후 매도 진입후 최저가 대비 20틱 상승시 청산. 7) 기타 ㅡ A.B.C.D가격은 직접 입력 위 조건으로 수식 작성 부탁드립니다. 감사합니다.
프로필 이미지
eiger
2020-02-27
411
글번호 136419
시스템
답변완료

수식 작성 부탁 드립니다

2개의 매수 진입 조건을 같이 사용 할수 있도록 부탁 드립니다 매수 진입 수식에 {input : period(20);} 이 상승 할때{CurrentBar > 20 and ma(haClose,period) > ma(haOpen,period) } 진입 허용 하도록 설정 되어 있습니다 아래 수식에서 input : period2(10);이 상승 할때 조건을 첨부 원합니다 input : period(20); var : haClose(0), haOpen(0), haHigh(0), haLow(0); if CurrentBar > 1 then { haClose = (Open+High+Low+Close)/4; haOpen = (haOpen[1] + haClose[1])/2 ; haHigh = Max(High, haOpen, haClose); haLow = Min(Low, haOpen, haClose) ; var1 = ma(haOpen,period); } } if CurrentBar > 20 then { if ma(haClose,period) > ma(haOpen,period) Then{ var2 =ma(haClose,period); } input : period2(10); var : haClose(0), haOpen(0), haHigh(0), haLow(0); if CurrentBar > 1 then { haClose = (Open+High+Low+Close)/4; haOpen = (haOpen[1] + haClose[1])/2 ; haHigh = Max(High, haOpen, haClose); haLow = Min(Low, haOpen, haClose) ; var3 = ma(haOpen,period2); } } if CurrentBar > 20 then { if ma(haClose,period2) > ma(haOpen,period2) Then{ var4 =ma(haClose,period2); } if CurrentBar > 20 and ma(haClose,period) > ma(haOpen,period) and 매수진입 조건 then buy("B");
프로필 이미지
뎅이요
2020-02-27
393
글번호 136418
시스템
답변완료

수정 부탁드립니다.

안녕하세요? 답변해주신 아래의 내용에서 수정할 부분이 있어 도움요청드립다. 1. #포지션이 변경되어 새로운 진입포지션 발생시마다 1씩 증가 이 부분을 삭제하고 싶습니다. 2. 교차매매없이 정해진 익절손절에만 청산후, 새로운신호에 진입하고 싶습니다. 1씩증가 저부분을 삭제도 해보았지만 잘 안되네요. 수정부탁드립니다. 감사합니다. input : 매수음봉틱수(5),매수양봉틱수(5); input : 매도양봉틱수(5),매도음봉틱수(5); input : 진입횟수(5); input : 익절틱수(50),손절틱수(50); var : entry(0); #영업일 변경 if bdate != bdate[1] Then entry = 0; #포지션이 변경되어 새로운 진입포지션 발생시마다 1씩 증가 if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then entry = entry+1; if entry < 진입횟수 and #진입횟수가 지정한 값 이하 MarketPosition >= 0 and #매수나 무포지션 상태 C[1] >= O[1]+매도양봉틱수*PriceScale and #1봉전종가가 1봉전시가+매도양봉틱수 이상 C[0] <= O[0]-매도음봉틱수*PriceScale Then #현재봉 종가가 1봉전시가-매도음봉틱수 이하 sell("s"); if entry < 진입횟수 and #진입횟수가 지정한 값 이하 MarketPosition <= 0 and #매도나 무포지션 상태 C[1] <= O[1]-매수음봉틱수*PriceScale and #1봉전종가가 1봉전시가-매수음봉틱수 이하 C[0] >= O[0]+매수양봉틱수*PriceScale Then #현재봉 종가가 1봉전시가+매수양봉틱수 이상 buy("b"); #목표수익 설정 SetStopProfittarget(PriceScale*익절틱수,PointStop); #손절매 설정 SetStopLoss(PriceScale*손절틱수,PointStop);
프로필 이미지
대구어린울프
2020-02-27
406
글번호 136417
시스템
답변완료

부탁좀 드립니다

수고가 많으십니다 신호발생 캔들에 종가라인이 우측으로 그려지면서 수치를 나타내는 수식을 기존의 수식에 추가하고자 합니다. 다음신호가 나올때 까지 유지되었으면 합니다.
프로필 이미지
회원
2020-02-27
407
글번호 136404
시스템
답변완료

강조

var : month(0); month = int(date/100)-int(date/10000)*100; if month != month[1] and month == 1 Then PlotPaintBar(o,c,"강조",WHITE); 2017년 부터 년초가 제공되않아요
프로필 이미지
회원
2020-02-27
442
글번호 136403
강조
답변완료

강조

힝 매주 목요일 금요일아니고 3월 6월 9월 12월 두&#51760;주 목요일 셋&#51760;주 금요일 안되냐용1 1 var : count(0); var : month(0); month = int(date/100)-int(date/10000)*100; if month != month[1] Then { count = 0; if month%3 == 0 Then Condition1 = true; Else Condition1 = false; } if bdate != bdate[1] and DayOfWeek(bdate) == 4 Then { count = count+1; PlotPaintBar(H,L,"강조",MAGENTA); } 2 var : count(0); var : month(0); month = int(date/100)-int(date/10000)*100; if month != month[1] Then { count = 0; if month%3 == 0 Then Condition1 = true; Else Condition1 = false; } if bdate != bdate[1] and DayOfWeek(bdate) == 5 Then { count = count+1; PlotPaintBar(H,L,"강조",MAGENTA); }
프로필 이미지
회원
2020-02-27
520
글번호 136402
강조
답변완료

안녕하세요

//Variable: //cp = 2 (default) if high[cp] >= highest[2*cp+1](high) then LH = 1 else LH=0 endif if low[cp] <= lowest[2*cp+1](low) then LL= -1 else LL=0 endif if LH=1 then hil = high[cp] endif if LL = -1 then LOL=low[cp] endif return lol coloured(255,0,0) as "LF",hil coloured(0,255,0) as "HF" 수식 변환 문의드립니다. 감사합니다
프로필 이미지
물고기
2020-02-27
516
글번호 136398
지표
답변완료

수식문의드립니다

crossup(rsi(perood1),40) period1 10 ============================ 종목검색이 가능하게 수식문의드립니다.
프로필 이미지
나호이다
2020-02-27
510
글번호 136392
종목검색
답변완료

피라미딩 분할 익절

input : up익절1(150),up익절2(200); if MarketPosition == 1 and EntryPrice+PriceScale*up익절1 Then exitlong("bx1",AtLimit,def,"",Floor(MaxContracts*0.50),1); if MarketPosition == 1 and EntryPrice+PriceScale*up익절2 Then exitlong("bx2",AtLimit); input : dn익절1(150),dn익절2(200); if MarketPosition == -1 and EntryPrice-pricescale*dn익절1 Then exitshort("sx1",AtLimit,def,"",Floor(MaxContracts*0.50),1); if MarketPosition == -1 and EntryPrice-pricescale*dn익절2 Then exitshort("sx2",AtLimit); 1.피라미딩 2개 되었을 때 분할익절 수식입니다. 맞는지요? 2.맥스계약비율을 맥스계약수량으로 변경하는 수식도 요청합니다.
프로필 이미지
좌오비우오비
2020-02-27
529
글번호 136391
시스템