커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

알로우kim 님에 의해서 삭제되었습니다.

프로필 이미지
알로우kim
2022-07-13
12
글번호 160691
지표
답변완료

수식 질문드립니다.

현재 포지션이 매수일때, 현재 포지션이 매도일때, 어떻게 구현할지 궁금합니다. 감사합니다. !!
프로필 이미지
캣피쉬
2022-07-13
1413
글번호 160690
시스템
답변완료

이평수렴확장

수고가많습니다 영웅문 수식 한국투자증권수식 적용될수있도록 부탁 드립니다 (분.틱다적용 될수있도록) A) 1.a=ma(c,3); b=ma(c,60); x=(a-b); if(a>b && x>x(1),x,0) 2.a=ma(c,3); b=ma(c,60); x=(a-b); if(a>b && x>x(1),x,0) 3.a=ma(c,3); b=ma(c,60); x=(a-b); if(a<b && x>x(1),x,0) 4.a=ma(c,3); b=ma(c,60); x=(a-b); if(a<b && x<x(1),x,0) B) 1.a=ma(c,3); b=ma(c,60); x=(a-b); if(a>b && x>x(1),-x,0) 2.a=ma(c,3); b=ma(c,60); x=(a-b); if(a>b && x<x(1),-x,0) 3.a=ma(c,3); b=ma(c,60); x=(a-b); if(a<b && x>x(1),-x,0) 4.a=ma(c,3); b=ma(c,60); x=(a-b); if(a<b && x<x(1),-x,0)
프로필 이미지
매일수익감사
2022-07-13
1568
글번호 160689
지표
답변완료

문의합니다

안녕하세요 간단한 식인데, 시스템으로 설정하다고 조금 헛갈린 부분이 있어서 문의합니다 매수청산(환매도)일 경우 SetStopProfittarget(50,PointStop) 에서 이익실현가의 -5호가로 주문이 나가고, setstoploss(200,pointstop); 에서 손실실현가의 -5호가로 주문이 나가는 식 부탁드려요
프로필 이미지
검은약
2022-07-13
1844
글번호 160688
시스템
답변완료

시스템식 문의 드립니다.

요청드렸던 시스템식 관련해서 감사드리다는 말씀을 먼저 드리고 싶습니다. 항상 감사드립니다. 그리고 확인중에 하나 궁금한 점이 있어 이렇게 글을 남깁니다. 중간쯤 (약 89~90번째 줄) 에 if var1 > 0 and C < AvgEntryPrice then ExitLong("bx"); 이 문구가 있는데, 작성했던 이유는 var1 > 0 이라는것은 일부 청산을 했고, 1분봉상 종가가 평단만큼 다시 내려오면 매도청산하는 내용인데, 해당시스템식으로 돌려보니, 일부청산 이후 1분봉산 종가가 평단이 아니라 마지막 진입가격만큼 내려오면 매도 청산을 하는것을 볼수 있었습니다. 확인좀 부탁드리겠습니다. . ---------------------------------------------------------------------------- input : 고점(7000); input : 원금(1000000); var : A1(0),A2(0),A3(0),A4(0),A5(0), 손절(0); Var : day(0),EntryDay(0),entry(False),dd(0),ED(0); A1 = 고점*0.95; A2 = 고점*0.93; A3 = 고점*0.91; A4 = 고점*0.89; A5 = 고점*0.87; 손절 = 고점*0.85; if Bdate != Bdate[1] Then { Condition1 = False; entry = true; day = day+1; dd = dd+1; } if TotalTrades > TotalTrades[1] Then entry = False; if DAYClose(1) >= DayClose(2)*1.29 OR DAYClose(2) >= DayClose(3)*1.29 OR DAYClose(3) >= DayClose(4)*1.29 OR DAYClose(4) >= DayClose(5)*1.29 OR DAYClose(5) >= DayClose(6)*1.29 OR DAYClose(6) >= DayClose(7)*1.29 Then Condition1 = TRUE; if condition1 == true AND MarketPosition == 0 and entry == true and c > J1 Then Buy("A매수",AtLimit,J1,Floor((원금*0.2)/A1)); if condition1 == true and entry == true and LatestExitName(1) != "손절" AND ((LatestEntryName(0) == "A매수") OR (MarketPosition == 0 AND C < J1 AND C >= J2)) Then Buy("B매수",AtLimit,J2,Floor((원금*0.2)/A2)); if condition1 == true and entry == true and LatestExitName(1) != "손절" AND ((LatestEntryName(0) == "B매수") OR (MarketPosition == 0 AND C < J2 AND C >= J3)) Then Buy("C매수",AtLimit,J3,Floor((원금*0.2)/A3)); if condition1 == true and entry == true and LatestExitName(1) != "손절" AND ((LatestEntryName(0) == "C매수") OR (MarketPosition == 0 AND C < J3 AND C >= J4)) Then Buy("D매수",AtLimit,J4,Floor((원금*0.2)/A4)); if condition1 == true and entry == true and LatestExitName(1) != "손절" AND ((LatestEntryName(0) == "D매수") OR (MarketPosition == 0 AND C < J4 AND C >= J5)) Then Buy("E매수",AtLimit,J5,Floor((원금*0.2)/A5)); #매수진입 if MarketPosition == 1 Then { #전봉대비 수량 감소(일부 청산발생을 위미) if CurrentContracts < CurrentContracts[1] Then { #청산가 저장 var1 = LatestExitPrice(0); Condition1 = False; Condition2 = False; Condition3 = False; Condition4 = False; Condition5 = False; } #전봉대비 수량 증가(추가 진입발생을 의미) if CurrentContracts > CurrentContracts[1] Then { #현재수량 저장 Var3 = CurrentContracts; Condition1 = False; Condition2 = False; Condition3 = False; Condition4 = False; Condition5 = False; } if var1 > 0 and C < AvgEntryPrice then ExitLong("bx"); if Condition1 == False AND ((LatestEntryName(0) == "A매수") OR (LatestEntryName(0) == "B매수") or (LatestEntryName(0) == "C매수"))Then ExitLong("3%익절",AtLimit,AvgEntryPrice*1.03,"",Floor(Var3*0.4),1); if Condition2 == False AND ((LatestEntryName(0) == "A매수") OR (LatestEntryName(0) == "B매수") or (LatestEntryName(0) == "C매수")) Then ExitLong("4%익절",AtLimit,AvgEntryPrice*1.04,"",Floor(Var3*0.3),1); if Condition3 == False AND ((LatestEntryName(0) == "A매수") OR (LatestEntryName(0) == "B매수") or (LatestEntryName(0) == "C매수")) Then ExitLong("5%익절",AtLimit,AvgEntryPrice*1.05,"",Floor(Var3*0.1),1); if Condition4 == False AND ((LatestEntryName(0) == "A매수") OR (LatestEntryName(0) == "B매수") or (LatestEntryName(0) == "C매수")) Then ExitLong("7%익절",AtLimit,AvgEntryPrice*1.07,"",Floor(Var3*0.1),1); ExitLong("10%익절",AtLimit,AvgEntryPrice*1.10); if Condition1 == False AND ((LatestEntryName(0) == "D매수"))Then ExitLong("1-D%익절",AtLimit,AvgEntryPrice*1.01,"",Floor(Var3*0.3),1); if Condition2 == False AND ((LatestEntryName(0) == "D매수")) Then ExitLong("2-D%익절",AtLimit,AvgEntryPrice*1.02,"",Floor(Var3*0.3),1); if Condition3 == False AND ((LatestEntryName(0) == "D매수")) Then ExitLong("3-D%익절",AtLimit,AvgEntryPrice*1.03,"",Floor(Var3*0.3),1); if Condition4 == False AND ((LatestEntryName(0) == "D매수")) Then ExitLong("4-D%익절",AtLimit,AvgEntryPrice*1.04,"",Floor(Var3*0.1),1); if Condition1 == False AND ((LatestEntryName(0) == "E매수"))Then ExitLong("본절",AtLimit,AvgEntryPrice*1.003,"",Floor(Var3*0.5),1); if Condition2 == False AND ((LatestEntryName(0) == "E매수")) Then ExitLong("1-E%익절",AtLimit,AvgEntryPrice*1.01,"",Floor(Var3*0.4),1); if Condition3 == False AND ((LatestEntryName(0) == "E매수")) Then ExitLong("2-E%익절",AtLimit,AvgEntryPrice*1.02,"",Floor(Var3*0.1),1); } Else#매수진입중이 아니면 { #변수 0으로 초기화 var1 = 0; Var2 = 0; } if MarketPosition == 1 Then ExitLong("손절",AtStoP,손절);
프로필 이미지
맴맴잉
2022-07-13
1478
글번호 160687
시스템
답변완료

시간 매수매도 문의

안녕하세요 개발자님. 시간 기준 시초가와 장마감 동시호가 매매 방법을 모르겠습니다. 질문 드리는 내용은 다음과 같습니다. 1. 시초가 매수 낮 12시 매도 2. 장 마감 동시호가 매수 다음날 시초가 매도. 3. 낮 12시 매수, 다음날 1시 매도. 항상 도움 주셔서 감사합니다~!
프로필 이미지
히익
2022-07-12
1163
글번호 160686
시스템

신대륙발견 님에 의해서 삭제되었습니다.

프로필 이미지
신대륙발견
2022-07-12
22
글번호 160685
시스템

미래펴다 님에 의해서 삭제되었습니다.

프로필 이미지
미래펴다
2022-07-12
3
글번호 160684
시스템
답변완료

함수 사용은 어떻게 하나요 (초보)

input : N(20); var : RSD(0),MAV(0),MRS(0); RSD = Data1(c)/data2(c) * 100; mav = Data1(ma(RSD,N)); MRS = ((RSD /mav) - 1 ) * 100; Plot1(MRS); plot2(0); 주가 상대지수 함수 사용시 위와 같은 함수로 지표를 만들어서 사용하려다 보니 첨부처럼 예를 들어 효성첨단소재랑 코스피지수의 2개의 지수를 상대강도도 하려고 하는 데.. 효성첨단소재랑 코스피지수 합쳐나도 안되고 사진처럼 위아래해도 안되면서 .//수식에서 참조할 2전빼 종목 데이타가 없다고 문구가 뜹니다.. 제가 원하는 당초 질문은 종목을 한개 놓고 함수를 적용하면 즉 위의 예처럼 효성첨단소재(코스피종목)이면 코스피 종목의 차트를 놓고 상대강도지수 지표를 클릭하면 자동으로 코스피 상대강도와 비교되어 아래 차트에 코스피대비 종목 (효성첨단소재)의 상대강도가 지표로 표시되게 하려면 어떻게 하면되나요.. 꼭 좀 부탁드립니다..
프로필 이미지
별빛달빛
2022-07-12
1204
글번호 160682
사용자 함수