커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식 작성 부탁 드립니다

수고하십니다^^ 해외선물 수식 작성 부탁드려요! 매집진입후 수익시 분할 강제청산 1계약은 25틱 수익시 강제청산 또다른 1계약은 35틱 수익시 강제청산 감사합니다~
프로필 이미지
이태리
2019-06-12
312
글번호 129326
시스템
답변완료

수정 요청 드립니다.

* <62801번글> 작성그대로 공부했는데 실 적용에서 잘 안됨니다. * 진입식: IF CrossDown(VAR6,var59+PriceScale*2) Then sell("매도5") ; * 아래는 청산식 입니다. 그런데 최대수익 13틱에서 하락 하면 3틱에서 청산이 안됨니다. 로직 수정좀 부탁 드립니다. ### if MarketPosition == 1 Then { if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*8 Then var1 = EntryPrice+PriceScale*3; else if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*15 Then var1 = EntryPrice+PriceScale*9; Else var1 = 0; if var1 > 0 Then ExitLong("bb1",AtStop,var1); } if MarketPosition == -1 Then { if Lowest(L,BarsSinceEntry) >= EntryPrice+PriceScale*8 Then var2 = EntryPrice-PriceScale*3; else if Lowest(L,BarsSinceEntry) >= EntryPrice+PriceScale*15 Then var2 = EntryPrice-PriceScale*9; Else var2 = 0; if var2 > 0 Then ExitShort("cc1",AtStop,var2); } ### * 바쁜데 항상 고맙 습니다.
프로필 이미지
요타
2019-06-10
355
글번호 129325
강조
답변완료

부탁합니다

전일종가 중간값 시가 고점 저점 선이나오게 부탁드립니다 중간값은 전일종가로 했어 부탁합니다 항생용으로 야간주간 통합했어요
프로필 이미지
김원식
2019-06-10
323
글번호 129324
지표
답변완료

고가대비 지표를 부탁드려도 될까요?

선차트로 그리고 싶은데..지표로 1. 선물 최근 50봉 고가대비 선물 현재가를 선물pt로 나타내고 싶습니다. 2. 선물차트 아래에 콜옵션,풋옵션 atm의 합을 지표(선차트)로 나타낵조 싶습니다....가능한지요~~
프로필 이미지
초보오
2019-06-10
323
글번호 129323
지표
답변완료

문의 드립니다.

볼린져 20 2에서 시장가가 중심선 위에서 아래로 깨고 난 후 볼린져 하단선을 닿지 않고 중심선을 상승 돌파 할 때 매수 매수 후에 시장가가 중심선을 아래로 깨고 내려오면 매도 청산 완료 볼린져 20 2에서 시장가가 중심선 아래에서 위로로 돌파하고 난 후 볼린져 상단선을 닿지 않고 중심선을 아래로 돌파 할 때 매도 매도 후에 중심선을 위로 깨고 올라가면 매수 청산 완료 매수 매도 각각 분리해서 식을 부탁드립니다. 감사합니다.
프로필 이미지
선물대장
2019-06-10
325
글번호 129313
시스템
답변완료

수식전환 부탁드립니다

수고가 많으십니다. 수식전환 부탁드립니다. (1) 매수 a=MA(종가,60,삼각); e1=shift(a,-1); e2=shift(a,-2); b1=shift(a,-3); b2=shift(a,-4); crossup(e2,b2) 매수청산 a=MA(종가,60,삼각); e1=shift(a,-1); e2=shift(a,-2); b1=shift(a,-3); b2=shift(a,-4); crossdown(e2,b2) 매도 a=MA(종가,60,삼각); e1=shift(a,-1); e2=shift(a,-2); b1=shift(a,-3); b2=shift(a,-4); crossdown(e2,b2) 매도청산 a=MA(종가,60,삼각); e1=shift(a,-1); e2=shift(a,-2); b1=shift(a,-3); b2=shift(a,-4); crossup(e2,b2) (2) 매수 max( avg(C,20), avg(C,60), avg(C,120)) < min( avg(C,20), avg(C,60), avg(C,120)) * (1+10/100) && C > highest(H(1),5) && C(1) <= highest(H(2),5) 매수청산 A=ma(c,5,지수); B=ma(c,10); CrossDown(A,B) or crossdown(c,Highest(H,20)*(1-0.025/100)) 매도 max( avg(C,20), avg(C,60), avg(C,120)) < min( avg(C,20), avg(C,60), avg(C,120) * (1+10/100) && C < Lowest(L(1),5) && C(1) >= Lowest(L(2),5) 매도청산 A=ma(c,5,지수); B=ma(c,10); CrossUP(A,B) or crossup(c,Lowest(L,20)*(1+0.025/100) (3) 매수 Highest(H,120)==H 매수청산 A=valuewhen(1,Highest(H,120)==H, H); Lowest(L,60)==L or C < (A-2*ATR(120)) or crossdown(c,Highest(H,120)*(1-0.125/100)) 매도 Lowest(L,30)==L 매도진입 B=valuewhen(1, Lowest(L,30)==L, L); Highest(H,120)==H or C > (B + 2*ATR(120)) or crossup(c,Lowest(L,60)*(1+0.125/100))
프로필 이미지
이대표
2019-06-10
365
글번호 129301
지표
답변완료

문의드립니다~

종가기준 20봉최저가 시점의 120이평선가격과 240이평선가격을 구하고 싶습니다~ 예를들어 17봉전에 종가기준 20봉최저가이면은 17봉전의 120이평선과 240이평선가격을 구하는 식으로요~ 감사합니다~
프로필 이미지
겐지
2019-06-10
342
글번호 129300
시스템
답변완료

손절 청산식 부탁 드립니다.

* 항상 많은 도움에 고맙습니다. * 매매시 청산이 제일 큰 문제 인데요.... 2가지 확인좀 부탁 드립니다. * 요청사항1 : 청산명에 따른 매도 안되는데 수정좀 부탁 드립니다. 즉 "매수5"로 진입된 것은 22틱 수익이면 청산 의미 입니다. 아래식으로 했는데 잘안되네요..... ▶진입식:IF CrossDown(VAR10,var59) Then buy("매수5") ; ▶청산식:if MarketPosition==1 and IsEntryName("매수5") == true then { ExitShort("sx1",AtStop,EntryPrice+PriceScale*22); } * 요청사항2 : 매매(매수or매도) 진입후 손실이 if MarketPosition == 1 Then { 10봉 지났을때 최대수익은 5틱미만 손실은10틱이상이며 매수때 최저가 보다 5틱 작으면 청산 else 20봉 지났을때 최대수익은 5틱미만 손실은15틱이상이며 매수때 최저가 보다 10틱 작으면청산 else 30봉이 지났을때 손실이 30틱 이상이면 청산 else 40봉이 지나면 무조건 청산 수식좀 부탁 드립니다. * 정말 고맙습니다. 좋은 시간 되십시요^^
프로필 이미지
요타
2019-06-10
330
글번호 129295
시스템
답변완료

부탁드립니다

선생님 전 어제 가입한 초보입니다 선배님들 과 대화 내용을 보고 아래 지표가 너무 좋아 보여서 활용해서 기본을 잡아보려 합니다 도와 주시면 감사합니다 아래 지표에 - 파동선의 두께와 색갈을 변경하는 방법 이 필요합니다 ( 작은 파동선과 큰 파동선 입니다 ) - 지금은 파동 시작점 과 끝 지점의 수치가 나타납니다 -> 지점의 수치와 함께 증가 감소 틱수도 나타나게 부탁드립니다 ( 지점값은 얼마 상승틱수 얼마 하락틱수 몇틱 이렇게 부탁드립니다 - 지난 지표에 있습니다만 큰 추세선이 있는것은 이것이라서 여기에 부탁드립니다 감사합니다 Input:length(10),종가사용여부(0),파동선두께(2),수치표시(1),표시(0); Var:j(0),jj(0),HH(0),LL(0),최종고가(0),최종저가(0),최종꼭지점(""),처리구분(""), TL1(0),Text1(0),TL11(0),TL12(0); Array:고[10,4](0),저[10,4](0); // 1:가격,2:Index,3:sDate,4:sTime #==========================================# HH = IFF(종가사용여부==1,C,H); LL = IFF(종가사용여부==1,C,L); If Index == 0 Then { 고[1,1] = HH; 저[1,1] = LL; } Condition1 = Highest(HH,length) == HH and 최종고가 <> HH; Condition2 = Lowest (LL,length) == LL and 최종저가 <> LL; 처리구분 = ""; If Condition1 and Condition2 Then // 기간고점과 기간저점 동시 발생 { If 최종꼭지점 == "저점" Then { If 저[1,1] > LL Then 처리구분 = "저점처리"; Else 처리구분 = "고점처리"; } Else If 최종꼭지점 == "고점" Then { If 고[1,1] < HH Then 처리구분 = "고점처리"; Else 처리구분 = "저점처리"; } } Else If Condition1 Then 처리구분 = "고점처리"; Else If Condition2 Then 처리구분 = "저점처리"; #==========================================# If 처리구분 == "고점처리" Then { 최종고가 = HH; // 신규고점을 체크하기 위해 저장 If 최종꼭지점 == "저점" Then { For j = 10 DownTo 2 { For jj = 1 To 4 { 고[j,jj] = 고[j-1,jj]; } } 고[1,1] = HH; 고[1,2] = Index; 고[1,3] = sDate; 고[1,4] = sTime; TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]); if 저[1,1] > 저[2,1] Then { if 표시 == 0 Then TL_Delete(TL11); TL11 = TL_New(저[2,3],저[2,4],저[2,1],저[1,3],저[1,4],저[1,1]); TL_SetExtRight(TL11,true); TL_SetColor(TL11,BLUE); TL_SetSize(TL11,2); } If 수치표시 == 1 Then { Text1 = Text_New(고[1,3],고[1,4],고[1,1],NumToStr(고[1,1],2)); Text_SetStyle(Text1, 2, 1); } TL_SetSize(TL1,파동선두께); TL_SetColor(TL1,RED); } Else If 고[1,1] < HH Then // 1번 고점보다 높은 고가 출현 { 고[1,1] = HH; 고[1,2] = Index; 고[1,3] = sDate; 고[1,4] = sTime; TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]); // 시작점은 변동없고 끝점의 위치가 현재 봉으로 연장된 것임 If 수치표시 == 1 Then { Text_SetLocation(Text1,고[1,3],고[1,4],고[1,1]); Text_SetString(Text1,NumToStr(고[1,1],2)); } } 최종꼭지점 = "고점"; } #==========================================# If 처리구분 == "저점처리" Then { 최종저가 = LL; If 최종꼭지점 == "고점" then { For j = 10 DownTo 2 { For jj = 1 To 4 { 저[j,jj] = 저[j-1,jj]; } } 저[1,1] = LL; 저[1,2] = Index; 저[1,3] = sDate; 저[1,4] = sTime; TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]); if 고[1,1] < 고[2,1] Then { if 표시 == 0 Then TL_Delete(TL12); TL12 = TL_New(고[2,3],고[2,4],고[2,1],고[1,3],고[1,4],고[1,1]); TL_SetExtRight(TL12,true); TL_SetColor(TL12,RED); TL_SetSize(TL12,2); } If 수치표시 == 1 Then { Text1 = Text_New(저[1,3],저[1,4],저[1,1],NumToStr(저[1,1],2)); Text_SetStyle(Text1, 2, 0); } TL_SetSize(TL1,파동선두께); TL_SetColor(TL1,BLUE); } Else If 저[1,1] > LL then { 저[1,1] = LL; 저[1,2] = Index; 저[1,3] = sDate; 저[1,4] = sTime; TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]); If 수치표시 == 1 Then { Text_SetLocation(Text1,저[1,3],저[1,4],저[1,1]); Text_SetString(Text1,NumToStr(저[1,1],2)); } } 최종꼭지점 = "저점"; }
프로필 이미지
유로정복자
2019-06-10
350
글번호 129294
지표