커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

지표문의 드립니다.

수고하십니다. 예스글로벌 사용중인데요. 해외선물차트에서 저번주 주봉의 고가 저가 시가 중심가 이번주 주봉의 고가 저가 시가 중심가 이렇게 지표를 작성하고 싶습니다. 항셍종목이나 나스닥종목등 시간대가 맞지않을경우 시간은 함수로 지정하여 입력할수 있도록 부탁드립니다. 감사합니다.
프로필 이미지
휴먼시아
2019-05-01
212
글번호 128296
지표
답변완료

문의 드립니다.

볼린져밴드 20. 2 중심선 위로 돌파 하고 그 다음 봉이 양봉이든 음봉이든 볼린져밴드 20이평 중심선 아래로 깨지 않으면 매수 상단선 돌파 후 음봉 발생시 청산완료 상단선 닿기 전에 중신선인 20이평 아래로 깨면 매도 손절 볼린져밴드 20. 2 중심선 아래로 돌파 하고 그 다음 봉이 양봉이든 음봉이든 볼린져밴드 20이평 중심선 위로 깨지 않으면 매도 하단선 돌파 후 양봉 발생시 청산완료 하단선 닿기 전에 중신선인 20이평 위로 돌파면 매도 손절 부탁드립니다.
프로필 이미지
선물대장
2019-05-01
208
글번호 128295
시스템
답변완료

등락률 지표문의

안녕하세요 목적은 날짜별 지수 등락률을 파악하고 싶습니다.(일봉,월봉등 타임프레임 변경시 변동없게) 1. 올해기준의 전체등락률%(2019년) > 단, 매년 1월은 작년데이터가 포함되게 부탁드립니다. ex) 지금 시점이 2019년 1월 이라면, 2018 1월~ 2019 1월의 데이터를. 2019년 2월이 된다면 2019년 01~02월의 데이터를 *기준은 전년도(2018년)종가기준입니다. 2. 당월의 전체등락률% *기준은 전월 종가대비 등락률 3. 전월의 전체등락률% *기준은 전전월 종가대비 등락률
프로필 이미지
렉쳐
2019-05-01
224
글번호 128294
지표
답변완료

안녕하세요

안녕하세요. 수고 많으십니다. 다름이 아니라 아래 수식은 1 이평. 20 이평. 30이평. 40 이평선이 있습니다. 20. 30. 40 이평선 우측아래에 20. 30. 40 숫자를 표현하고 싶습니다. 가능 하시면 도움 부탁드립니다. 감사 합니다. 수고 하세요. input : P1(1),P2(20),P3(30),P4(40); var : count(0); var : sumV1(0), maV1(0); var : sumV2(0), maV2(0); var : sumV3(0), maV3(0); var : sumV4(0), maV4(0); sumV1 = 0; sumV2 = 0; sumV3 = 0; sumV4 = 0; for count = 0 to P4-1{ if count < P1 then sumV1 = sumV1+DayClose(count); if count < P2 then sumV2 = sumV2+DayClose(count); if count < P3 Then sumV3 = sumV3+DayClose(count); if count < P4 Then sumV4 = sumV4+DayClose(count); } maV1 = sumV1 / P1; maV2 = sumV2 / P2; maV3 = sumV3 / P3; maV4 = sumV4 / P4; plot1(mav1,"이평1"); plot2(mav2,"이평2",WHITE); plot3(mav3,"이평3",YELLOW); plot4(mav4,"이평4",BLUE);
프로필 이미지
탐라
2019-05-01
177
글번호 128293
지표
답변완료

문의드립니다.

도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다. 1. 기타 전에 만들어주신 수식을 토대로 피라미딩 전략을 만들어 봤는데요. 전 최근 진입한 가격에서 ATRV*ATR곱셈만큼 되면 계속 추가 진입할 줄 알았거든요. 그런데 다른진입신호만 허용 누르면 bb딱 한번만 추가진입해요. 전 bb진입하고 또 그 진입가격에서 ATRV*ATR곱셈만큼 오른 가격되면 도 진입할 줄 알았거든요. 이거 모든 신호로 안되서 그런가 싶어서 모든 신호 눌러봤더니 30틱 위면 봉마다 계속 진입해버리더라구요. 제가 원하는 건 진입 -시가 + 30틱 넘으면 돌파 매수하고 추가진입 -LatestEntryPrice + ATRV*ATR곱셈인 가격을 추가돌파하면 또 매수하려고 합니다. 청산 -1계약 진입했을 때 : LatestEntryPrice(0) - ATRV*ATR곱셈/2 가격에 도달하면 청산(손절) -진입 + 추가진입했을 때: 그 추가진입가격에서 LatestEntryPrice(0) - ATRV*ATR곱셈/2 도달하면 청산 이렇게 하고 싶어요. 제어 -하루 깨지는 건 n회로 제한하려고 합니다. -그러니까 포지션 1로 진입을 해서 깨졌든 포지션을 쌓아서 5포지션으로 깨졌든 깨지는 건 n회로 제한하려고 합니다. input: ATR기간(14),ATR곱셈(2),n(20); var : 매수단위(0),투입금액(0),ATRV(0); ATRV = atr(ATR기간); 매수단위 = 1; buy("b",,dayopen + 30 * PriceScale, 매수단위); if MarketPosition == 1 Then { buy("bb",AtStop,LatestEntryPrice(0)+ATRV*ATR곱셈,매수단위); ExitLong("bx2",AtStop,LatestEntryPrice(0)-ATRV*ATR곱셈/2); } 2. 옵션도 총투자금액 정해놓으면 금액만큼만 딱 사나요? 3. 지표 // var1 은 ( (data2 종가 - data1 종가) + (data1의 종가 - data3의 종가) )/2 를 data1의 종가로 나눈 값 // 진입 data4의 시초가 + 10틱 오르면 data1 매수 청산 data4가 n포인트 손실을 입으면 n포인트 * var1 에서 손절. 선물신호(data4)로 옵션(data1) 사는 건데요. var1은 약식 델타값이고 선물 손절포인트 걸어 놓은 것만큼 옵션 손절을 걸려고 하는 거거든요. 일단 이렇게 방법을 생각해봤는데 마땅한 방법이 있을까요?
프로필 이미지
잡다백수
2019-05-02
191
글번호 128292
시스템
답변완료

부탁드립니다

수고하십니다 62331번 재질문입니다 070000 에 시가,고가,저가선를이 나타나지 않는것같습니다
프로필 이미지
파생돌이
2019-05-01
186
글번호 128291
지표
답변완료

문의드립니다

문의 드립니다 아래 수식은 만들어주신 지표수식입니다 1 문의 지표식에서 // 고점조건 = 5-1-5에서 가운데 고가가 좌측 5봉과 우측 5봉 고가보다 높다 이분분에서 좌측5봉을 2개부터5개까지하고 우측5봉을 2개부터5개까지조율할수있어으면합니다 그리고 저점조건도 똑같이 부탁드립니다 2 종목검색 부탁합니다 아래 선이 blue 와 red 로 표현되고잇습니다 검색식에서 blue 선값에 5프로 근접하면 검색되도록 부탁드립니다 감사합니다 Input:barCnt(30); Var:j(0),turnPntBit(""),TL1(0),TL2(0),TL3(0),T(0); Array:valArr[10](0),barArr[10](0),turnPntArr[10](""); // 봉이 새로 생겼으므로 봉개수 관리하는 변수들의 봉개수 값 1씩 증가 For j = 0 To 9 { barArr[j] = barArr[j] + 1; } // 고점조건 = 5-1-5에서 가운데 고가가 좌측 5봉과 우측 5봉 고가보다 높다 // 저점조건 = 5-1-5에서 가운데 저가가 좌측 5봉과 우측 5봉 저가보다 낮다 Condition1 = Highest(H,barCnt)[barCnt+1] <= H[barCnt] and H[barCnt] > Highest(H,barCnt); Condition2 = Lowest(L,barCnt)[barCnt+1] >= L[barCnt] and L[barCnt] < Lowest(L,barCnt); // 전환점구분 null값으로 초기화; // if 고점조건, 저점조건 동시 만족시 then // if 이전 고점,저점 범위를 모두 벗어났을 때 // 전환점구분 = 고저점; // else if 이전 고점을 갱신했다면 전환점구분 = 고점; // else if 이전 저점을 갱신했다면 전환점구분 = 저점; // else if 전환점배열의 현재(배열상 1번째)값이 고점이면 전환점구분 = 저점; // else if 전환점배열의 현재 값이 저점이면 전환점구분 = 고점; // else if 고점조건 만족하면 전환점구분 = 고점; // else if 저점조건 만족하면 전환전구분 = 저점; turnPntBit = ""; If Condition1 and Condition2 Then { If Max(valArr[1],valArr[2]) < H[barCnt] and Min(valArr[1],valArr[2]) > L[barCnt] Then turnPntBit = "HiLo"; Else If Max(valArr[1],valArr[2]) < H[barCnt] Then turnPntBit = "Hi"; Else If Min(valArr[1],valArr[2]) > L[barCnt] Then turnPntBit = "Lo"; Else If turnPntArr[1] == "Hi" Then turnPntBit = "Lo"; Else If turnPntArr[1] == "Lo" Then turnPntBit = "Hi"; } Else If Condition1 Then turnPntBit = "Hi"; Else If Condition2 Then turnPntBit = "Lo"; // if 전환점구분에 값이 있을 때만 아래 실행, 없으면 통과 If turnPntBit <> "" Then { // if 전환점구분이 고저점이면 then // 이전 파동은 연장시키고 아래에서 새로이 파동선을 추가토록 한다. If turnPntBit == "HiLo" Then { valArr[1] = IFF(turnPntArr[1] == "Hi",H[barCnt],L[barCnt]); barArr[1] = barCnt; TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]); If turnPntArr[1] == "Hi" Then turnPntBit = "Lo"; Else turnPntBit = "Hi"; } // if 신규 전환점구분이 현재(전환점배열 1번째)와 다르면 then // 배열값들을 이전값으로 Move; If turnPntBit <> turnPntArr[1] Then { for j = 8 downto 1 { valArr[j+1] = valArr[j]; barArr[j+1] = barArr[j]; turnPntArr[j+1] = turnPntArr[j]; } } // if 전환점구분이 바뀌었거나 또는 // (전환점구분은 안바뀌었는데 // (이전 고점보다 높은 고점이 발생했거나 또는 // 이전 저점보다 낮은 저점이 발생했으면)) then If turnPntBit <> turnPntArr[1] or (turnPntBit == turnPntArr[1] and ((turnPntBit == "Hi" and valArr[1] < H[barCnt]) or (turnPntBit == "Lo" and valArr[1] > L[barCnt]))) Then { // 값 배열에는 고점 또는 저점을 대입; // 봉개수 배열에는 입력변수의 봉개수 대입; // 전환점 배열에 전환점구분값을 대입; valArr[1] = IFF(turnPntBit == "Hi",H[barCnt],L[barCnt]); barArr[1] = barCnt; turnPntArr[1] = turnPntBit; // if 이전봉대비 전환점구분이 바뀌었다면 추세선 새로 그리고; // else 전환점구분이 안바뀌었으면 값만 바뀐거므로 추세선 연장; If turnPntArr[1][1] <> turnPntArr[1][0] Then{ TL1 = TL_New(sDate[barArr[2]],sTime[barArr[2]],valArr[2], sDate[barArr[1]],sTime[barArr[1]],valArr[1]); if turnPntArr[1][0] == "Hi" and valArr[1] < valArr[3] Then{ var1 = valArr[2]-abs(valArr[1]-valArr[3])+PriceScale; var2 = blue; } // if turnPntArr[1][0] == "Lo" and valArr[1] > valArr[3] Then{ // var1 = valArr[2]+abs(valArr[1]-valArr[3])-PriceScale; // var2 = red; // } TL2 = TL_New(sDate[barArr[2]],sTime[barArr[2]],var1,sDate[barArr[1]],sTime[barArr[1]],var1); TL_SetColor(tl2,var2); } Else { TL_SetEnd(TL1,sDate[barArr[1]],sTime[barArr[1]],valArr[1]); } } } TL_SetSize(TL1,1); TL_SetColor(TL1,GREEN);
프로필 이미지
파파리리
2019-05-01
191
글번호 128290
종목검색
답변완료

지표 변경부탁드립니다

a=crossup(sar(af,maxAf),c) or crossdown(sar(af,maxAf),c); valuewhen(1,a,avg(c,5)) 키움수식입니다 변경부탁들비니다 af 0.02 MAXAF 0.2
프로필 이미지
장군777
2019-04-30
216
글번호 128289
지표
답변완료

수식문안드립니다.

고생이 많으십니다. 수식부탁드립니다. #수식1 A=avg(c,기간3); c/A*100 # 기간1:10// 기간2:20// 기간3:60 # 기준선:100 감사합니다.
프로필 이미지
무자대기
2019-05-02
182
글번호 128288
지표