커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

시스템식 검토 부탁드립니다.

안녕하세요 다음과 같은 시스템식에서 그림1)과 그림2) 처럼 진입횟수를 2로 했을 경우 첫번째 진입시 각각의 매수타점에서의 신호는 제대로 나오는데 두번째 진입시 1차매수타점의 신호가 그림에서 보는바와 같이 예정된 매수타점보다 높은 위치에서 신호가 잡히네요. 단 두번째 진입시 2차매수타점의 신호는 제대로 잡힙니다. 두번째 진입시 잘못된 1차매수타점의 위치를 검토 부탁드립니다. 또한 44436번글 아직 검토 안하셨다면 다시한번 부탁드립니다. ------------------------------------------------------------------------------------ input : 전략식시작일자(20151012), 전략식시작시간(090000), 전략총매수금액(100) input : 매수위치1차(1), 매수위치2차(2), 매수위치3차(3); input : 매도위치1차(1.5), 매도위치2차(2), 매도위치3차(2.5); input : 매수비중1차(20), 매수비중2차(30), 매수비중3차(50); input : 매도비중1차(20), 매도비중2차(30), 매도비중3차(50); input : 전략식진입횟수(1); input : 최종손절위치(4); input : Period(384); var : CL(0),V0.5(0),V1(0),V2(0),V3(0); var : mid(0),V4(0),V5(0),V6(0),V7(0); var : diff(0),TF(0),cnt(0),value(0); var : entrycond1(false),entrycond2(false),entrycond3(false); Array : HH[400](0),LL[499](0); TF = TimeToMinutes(stime)%15; if date != date[1] or (date == date and TF < TF[1]) Then{ HH[0] = H; LL[0] = L; for cnt = 1 to 399{ HH[cnt] = HH[cnt-1][1]; LL[cnt] = LL[cnt-1][1]; } } if H > HH[0] Then HH[0] = H; if L < LL[0] Then LL[0] = L; if HH[Period] > 0 Then{ var1 = HH[0]; var2 = LL[0]; var11 = HH[1]; var12 = LL[1]; for cnt = 0 to Period-1{ if HH[cnt] > var1 Then var1 = HH[cnt]; if HH[cnt+1] > var11 Then var11 = HH[cnt+1]; if LL[cnt] < var2 Then var2 = LL[cnt]; if LL[cnt+1] < var21 Then var21 = LL[cnt+1]; } if var11 < var1 Then CL = (var1+var2)/2; V0.5 = var1-((var1-CL)/5)*1; V1 = var1-((var1-CL)/5)*2; ## 1매수타점 V2 = var1-((var1-CL)/5)*3; ## 2매수타점 V3 = var1-((var1-CL)/5)*4; ## 3매수타점 mid = (var1+var2)/2; V4 = var1-((var1-CL)/5)*5; V5 = var1-((var1-CL)/5)*6; V6 = var1-((var1-CL)/5)*7; V7 = var1-((var1-CL)/5)*8; value = abs(var1-V0.5); if sdate >= 전략식시작일자 and TotalTrades < 전략식진입횟수 then{ if MarketPosition == 0 and stime >= 전략식시작시간 and ((stime < 120000 and O > C[1]*0.985) or (stime >= 120000 and C > V2)) Then{ if NextBarOpen > var1-value*(매수위치1차+1) and EntryCond1 == false Then buy("1차매수",atlimit,var1-value*(매수위치1차+1),Floor((전략총매수금액*10000*(매수비중1차/100))/C)); Else buy("1차매수.",AtMarket,def,Floor((전략총매수금액*10000*(매수비중1차/100))/C)); } if MarketPosition == 1 then{ diff = abs(var1[BarsSinceEntry]-V0.5[BarsSinceEntry]); if MaxEntries == 1 and L >= var1-value*(매수위치2차+1) and EntryCond2 == false Then buy("2차매수",atlimit,var1-value*(매수위치2차+1),Floor((전략총매수금액*10000*(매수비중2차/100))/C)); if MaxEntries == 2 and L >= var1-value*(매수위치3차+1) and EntryCond3 == false Then buy("3차매수",atlimit,var1-value*(매수위치3차+1),Floor((전략총매수금액*10000*(매수비중3차/100))/C)); if LatestExitName(0) == "1차매도" Then Condition1 = true; if LatestExitName(0) == "2차매도" Then Condition2 = true; if LatestExitName(0) == "3차매도" Then Condition3 = true; if Condition1 == false then exitlong("1차매도",atlimit,lowest(L,BarsSinceEntry)+diff*매도위치1차,"",Floor(MaxContracts*(매도비중1차/100)),1); if Condition2 == false then exitlong("2차매도",atlimit,lowest(L,BarsSinceEntry)+diff*매도위치2차,"",Floor(MaxContracts*(매도비중2차/100)),1); if Condition3 == false then exitlong("3차매도",atlimit,lowest(L,BarsSinceEntry)+diff*매도위치3차); exitlong("최종손절",AtStop,var1-value*(최종손절위치+1)); } Else{ Condition1 = false; Condition2 = false; Condition3 = false; } } } if MarketPosition == 1 and (LatestEntryName(0) == "1차매수" or LatestEntryName(0) == "1차매수.") Then entrycond1 = true; if MarketPosition == 1 and LatestEntryName(0) == "2차매수" Then entrycond2 = true; if MarketPosition == 1 and LatestEntryName(0) == "3차매수" Then entrycond3 = true; if MarketPosition == 0 Then{ entrycond1 = false; entrycond2 = false; entrycond3 = false; }
프로필 이미지
종풍화성
2015-10-14
211
글번호 91227
시스템
답변완료

부탁드립니다.

macd 지표를 챠트상 하단에 나타나지 않고, 그냥 본 챠트상에 수직선이나 색으로 구분하여 오를 때 빨간선이, 내릴 때 파란선이 구현될 수 있도록 부탁드립니다.
프로필 이미지
서태공
2015-10-14
169
글번호 91225
지표
답변완료

44437관련입니다

44437관련입니다 작성해 주신 산식을 아래와 같이 했는데 작동하지 않네요 원래식으로 나온 청산결과는 있습니다 그 청산결과를 수정하려고 했는데 잘않됩니다 뭐가 잘못된건지요? [원식] var:MiBar1(0); If 상[1]>=100 and 상[0]<100 and P0[1]==100 and P0[0]<100 and MA6ea_Macd[1]==100 and MA6ea_Macd[0]<100 and BA[1]==100 and BA[0]<100 and T7>97 Then { ExitLong("C4"); } \\\\\\ [변경후] var:MiBar1(0); If 상[1]>=100 and 상[0]<100 and P0[1]==100 and P0[0]<100 and MA6ea_Macd[1]==100 and MA6ea_Macd[0]<100 and BA[1]==100 and BA[0]<100 // and T7>97 Then { condition23=True; MiBar1=0; } If T7<98 Then Condition23=False; If Condition23==True Then { If C<O Then MiBar1=L; If C<MiBar1 and MiBar1>0 Then ExitLong("C4"); }
프로필 이미지
티끌
2015-10-14
168
글번호 91224
시스템
답변완료

수식 부탁합니다

60 이평선을 아래와 같이 지표식으로 나타낼 경우 plot1, plot2로 막대그래프로 하면 해당 캔들만 막대그래프가 그려지는데 제가 바라는 것은 plot1이 발생하고 plot2가 발생할 때 까지 그리고 plot2가 발생한 다음 plot1 발생까지 막대그래프로 차트에 나타내고 싶습니다. plot1에서 plot2까지 사이에는 예를 들어 핑크 막대그래프로 나타내고 plot2엣 plot1까지 사이에는 예를 들어 하늘색 막대그래프로 나타내고 싶습니다. var1 = ma(C,60); if var1 > var1[1] and countif(var1 > var1[1],30) <= 1 then plot1(L); if var1 < var1[1] and countif(var1 < var1[1],30) <= 1 then plot2(L);
프로필 이미지
미래테크
2015-10-14
171
글번호 91223
지표
답변완료

수식 문의드립니다.

안녕하세요. 시스템 매매 공부 시작한지 얼마 안된 초보입니다. 생각보다 어려워서 헤매고 있네요.. 아래 수식 도움 요청드립니다. 틱차트 120틱 기준 이동평균선 5,20 사용 이평선 20선이 상승중일때 이평선 5선보다 시가가 아래에 있으면 한계약 매수, 이익청산은 0.5 손절은 반대신호에서 청산과 동시에 반대신호 진입, 진입할때 진입가격 표시 이평선 20선이 하락중일때 이평선 5선보다 시가가 위에 있으면 한계약 매도, 마찬가지로 이익청산은 0.5 손절은 반대신호에서 청산과 동시에 반대신호 진입, 진입할때 진입가격 표시 하루 수익 1.2포인트 이상일시 그날 진입 종료 하루 손실 0.8포인트 이상일시 그날 진입 종료 오후 3시 장 종료시 모든 포지션 청산. 부탁드리겠습니다. 감사합니다.
프로필 이미지
hmx2j
2015-10-14
177
글번호 91222
시스템
답변완료

문의 드립니다

60분차트에서 볼린저x-2 상단선이 y이평선을 상향돌파하는 검색식과 역으로 y이평선이 볼린저상단선을 돌파하는 것도 부탁드립니다. 수고하세요.
프로필 이미지
발광머리
2015-10-14
170
글번호 91221
검색
답변완료

지표부탁드립니다

전일종가대비 퍼센트 채널 (전일종가기준 퍼센트채널 을 0.25 0.5 1 1.25 4개를 같이쓸수있도록 하여주시고 변수처리가능하게 부탁합니다 전일 종가 전일 중간값 당일 시가 당일실시간4등분선 함께쓸수있도옥 만들어주시기 부탁드립니다 항시 고생하시는 담당자님의 무궁한 발전을 기원합니다
프로필 이미지
상승형
2015-10-14
213
글번호 91220
지표
답변완료

문의 드립니다

수고 많으십니다. trix 20 signal 10 지표가 60분봉에서 trix선이 기준값 0선을 상향 돌파하는 검색식 부탁드립니다. 시그널선은 절대 아닙니다.
프로필 이미지
발광머리
2015-10-13
174
글번호 91219
검색
답변완료

문의드립니다.

늘 수고많으시네요.. 시스템식을 검증하기에는 많은 제약이 있네요. 혹시.. 검색된 날짜의 종가가격을 검색결과값에 넣을 수 있나요? 검색된 날짜를 배열에 저장하고 가격을 불러오는 방법? 즉 결론은 find(검색된 날짜의 종가가격) 또는 find(검색된 날짜의 시가가격) 을 나타내고 싶습니다만. 계속 현재가가 나오네요. 예시) 삼성전자 검색결과값(100만원) 현재가(99만원)
프로필 이미지
만들레영토
2015-10-13
203
글번호 91218
종목검색