커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

예스요 님에 의해서 삭제되었습니다.

프로필 이미지
예스요
2021-10-24
18
글번호 153100
시스템
답변완료

수식 수정 의뢰드립니다!

안녕하세요! 아래 수식에 오타가 있는지 검증에서 에러가 발생을 합니다! 확인 좀 부탁드릴께요! 감사합니다! Input:length(10); Var:lastHi(0),lastLo(0),lastVertex(""),procBit(""), sBar(0),TL1(0),TL2(0),TL3(0), hiTLSlope(0),hiTLBeginBar(0),hiTLBeginVal(0),hiTLEndVal(0), loTLSlope(0),loTLBeginBar(0),loTLBeginVal(0),loTLEndVal(0); //ssssssssssssssssssssssssssssssssss Var:hiTLBeginBN(0),loTLBeginBN(0); //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee Var:PK1(0),PK2(0),PK3(0),PK4(0),PK5(0),PK6(0),PK7(0),PK8(0),PK9(0),PK10(0), VL1(0),VL2(0),VL3(0),VL4(0),VL5(0),VL6(0),VL7(0),VL8(0),VL9(0),VL10(0), pkBN1(0),pkBN2(0),pkBN3(0),pkBN4(0),pkBN5(0), pkBN6(0),pkBN7(0),pkBN8(0),pkBN9(0),pkBN10(0), vlBN1(0),vlBN2(0),vlBN3(0),vlBN4(0),vlBN5(0), vlBN6(0),vlBN7(0),vlBN8(0),vlBN9(0),vlBN10(0); //========================================== Condition1 = Highest(H,length) = H and lastHi <> H; Condition2 = Lowest (L,length) = L and lastLo <> L; procBit = ""; If Condition1 and Condition2 Then Begin If lastVertex = "Valley" Then Begin If VL1 > L Then procBit = "Valley" Else procBit = "Peak"; End Else If lastVertex = "Peak" Then Begin If PK1 < H Then procBit = "Peak" Else procBit = "Valley"; End; End Else If Condition1 Then procBit = "Peak" Else If Condition2 Then procBit = "Valley"; //========================================== If procBit = "Peak" Then Begin lastHi = H; If lastVertex = "Valley" Then Begin PK9 = PK8; pkBN9 = pkBN8; PK8 = PK7; pkBN8 = pkBN7; PK7 = PK6; pkBN7 = pkBN6; PK6 = PK5; pkBN6 = pkBN5; PK5 = PK4; pkBN5 = pkBN4; PK4 = PK3; pkBN4 = pkBN3; PK3 = PK2; pkBN3 = pkBN2; PK2 = PK1; pkBN2 = pkBN1; PK1 = H; pkBN1 = BarNumber; sBar = BarNumber - vlBN1; TL1 = TL_New(Date[sBar],Time[sBar],VL1,Date,Time,PK1); TL_SetSize(TL1,2); TL_SetColor(TL1,GREEN); End Else If PK1 < H Then Begin PK1 = H; pkBN1 = BarNumber; TL_SetEnd(TL1,Date,Time,PK1); End ; { High Trend Line } //ssssssssssssssssssssssssssssssssss // 이전 단계에서는 1번 고점만 변경되어도 아래 루틴을 탔는데 // 2번 고점이 변경되지 않았으면 불필요한 계산이므로 // 2번 고점이 바뀌었을 때만 아래 루틴을 수행하도록 조건을 추가 // price는 동일 값이 나올 수 있어 비교할 수 없으나 BarNumber는 유일한 값이므로 비교 가능하다 If pkBN2[1] <> pkBN2 Then Begin //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee hiTLEndVal = 0; hiTLSlope = 0; hiTLBeginVal = 0; hiTLBeginBar = 0; If PK2 < PK3 Then Begin hiTLSlope = (PK2 - PK3)/(pkBN2 - pkBN3); hiTLBeginVal = PK3; //ssssssssssssssssssssssssssssssssss // 2번 고점이 바뀌지 않았다면 y 절편과 기울기는 그대로이고 거리에 해당하는 hiTLBeginBar 값에 변동이 있다. // 2번 고점이 변경되지 않았을 때의 hiTLBeginBar를 계산하려면 시작점의 BarNumber를 알면 되므로 // 새로 추가한 hiTLBeginBN 변수에 고점의 BarNumber를 넘겨준다. hiTLBeginBN = pkBN3; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If PK2 < PK4 Then Begin hiTLSlope = (PK2 - PK4)/(pkBN2 - pkBN4); hiTLBeginVal = PK4; //ssssssssssssssssssssssssssssssssss hiTLBeginBN = pkBN4; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If PK2 < PK5 Then Begin hiTLSlope = (PK2 - PK5)/(pkBN2 - pkBN5); hiTLBeginVal = PK5; //ssssssssssssssssssssssssssssssssss hiTLBeginBN = pkBN5; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If PK2 < PK6 Then Begin hiTLSlope = (PK2 - PK6)/(pkBN2 - pkBN6); hiTLBeginVal = PK6; //ssssssssssssssssssssssssssssssssss hiTLBeginBN = pkBN6; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If PK2 < PK7 Then Begin hiTLSlope = (PK2 - PK7)/(pkBN2 - pkBN7); hiTLBeginVal = PK7; //ssssssssssssssssssssssssssssssssss hiTLBeginBN = pkBN7; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If PK2 < PK8 Then Begin hiTLSlope = (PK2 - PK8)/(pkBN2 - pkBN8); hiTLBeginVal = PK8; //ssssssssssssssssssssssssssssssssss hiTLBeginBN = pkBN8; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If PK2 < PK9 Then Begin hiTLSlope = (PK2 - PK9)/(pkBN2 - pkBN9); hiTLBeginVal = PK9; //ssssssssssssssssssssssssssssssssss hiTLBeginBN = pkBN9; End ; hiTLBeginBar = BarNumber - hiTLBeginBN; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee hiTLEndVal = hiTLSlope * hiTLBeginBar + hiTLBeginVal; If hiTLEndVal > 0 Then Begin TL2 = TL_New(Date[hiTLBeginBar],Time[hiTLBeginBar],hiTLBeginVal,Date,Time,hiTLEndVal); TL_SetSize(TL2,1); TL_SetColor(TL2,RED); End ; End //ssssssssssssssssssssssssssssssssss // 2번 고점이 변경되지 않았으나 고추세선의 값이 살아있다면(0으로 초기화되지 않았다면) Else If hiTLEndVal[1] > 0 Then Begin // 거리 = 현재 봉의 BarNumber - 시작점의 BarNumber hiTLEndVal = hiTLSlope * (BarNumber - hiTLBeginBN) + hiTLBeginVal; TL_SetEnd(TL2,Date,Time,hiTLEndVal); End ; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee lastVertex = "Peak"; End ; //========================================== If procBit = "Valley" Then Begin lastLo = L; If lastVertex = "Peak" then Begin VL9 = VL8; vlBN9 = vlBN8; VL8 = VL7; vlBN8 = vlBN7; VL7 = VL6; vlBN7 = vlBN6; VL6 = VL5; vlBN6 = vlBN5; VL5 = VL4; vlBN5 = vlBN4; VL4 = VL3; vlBN4 = vlBN3; VL3 = VL2; vlBN3 = vlBN2; VL2 = VL1; vlBN2 = vlBN1; VL1 = L; vlBN1 = BarNumber; sBar = BarNumber - pkBN1; TL1 = TL_New(Date[sBar],Time[sBar],PK1,Date,Time,VL1); TL_SetSize(TL1,2); TL_SetColor(TL1,GREEN); End Else If VL1 > L then Begin VL1 = L; vlBN1 = BarNumber; TL_SetEnd(TL1,Date,Time,VL1); End ; { Low Trend Line } //ssssssssssssssssssssssssssssssssss If vlBN2[1] <> vlBN2 Then Begin //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee loTLEndVal = 0; loTLSlope = 0; loTLBeginVal = 0; loTLBeginBar = 0; If VL2 > VL3 and VL3 > 0 Then Begin loTLSlope = (VL2 - VL3)/(vlBN2 - vlBN3); loTLBeginVal = VL3; //ssssssssssssssssssssssssssssssssss loTLBeginBN = vlBN3; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If VL2 > VL4 and VL4 > 0 Then Begin loTLSlope = (VL2 - VL4)/(vlBN2 - vlBN4); loTLBeginVal = VL4; //ssssssssssssssssssssssssssssssssss loTLBeginBN = vlBN4; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If VL2 > VL5 and VL5 > 0 Then Begin loTLSlope = (VL2 - VL5)/(vlBN2 - vlBN5); loTLBeginVal = VL5; //ssssssssssssssssssssssssssssssssss loTLBeginBN = vlBN5; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If VL2 > VL6 and VL6 > 0 Then Begin loTLSlope = (VL2 - VL6)/(vlBN2 - vlBN6); loTLBeginVal = VL6; //ssssssssssssssssssssssssssssssssss loTLBeginBN = vlBN6; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If VL2 > VL7 and VL7 > 0 Then Begin loTLSlope = (VL2 - VL7)/(vlBN2 - vlBN7); loTLBeginVal = VL7; //ssssssssssssssssssssssssssssssssss loTLBeginBN = vlBN7; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If VL2 > VL8 and VL8 > 0 Then Begin loTLSlope = (VL2 - VL8)/(vlBN2 - vlBN8); loTLBeginVal = VL8; //ssssssssssssssssssssssssssssssssss loTLBeginBN = vlBN8; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee End Else If VL2 > VL9 and VL9 > 0 Then Begin loTLSlope = (VL2 - VL9)/(vlBN2 - vlBN9); loTLBeginVal = VL9; //ssssssssssssssssssssssssssssssssss loTLBeginBN = vlBN9; End ; loTLBeginBar = BarNumber - loTLBeginBN; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee loTLEndVal = loTLSlope * loTLBeginBar + loTLBeginVal; If loTLEndVal > 0 Then Begin TL3 = TL_New(Date[loTLBeginBar],Time[loTLBeginBar],loTLBeginVal,Date,Time,loTLEndVal); TL_SetSize(TL3,1); TL_SetColor(TL3,BLUE); End ; End //ssssssssssssssssssssssssssssssssss Else If loTLEndVal[1] > 0 Then Begin loTLEndVal = loTLSlope * (BarNumber - loTLBeginBN) + loTLBeginVal; TL_SetEnd(TL3,Date,Time,loTLEndVal); End ; //eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee lastVertex = "Valley"; End ;
프로필 이미지
qha71
2021-10-23
629
글번호 153099
지표
답변완료

시스템문의

1.안녕하세요 inputs : p(20); var1 = (data3(C);//풋 var2 = (data2(C);//콜 if var2 > var2[1] Then { Buy(); -->a } Else { if ma(data1(C),p) < ma(data1(C[1]),p) Sell(); -->b } if var1 > var1[1] Then { Sell();-->c } Else { if ma(data1(C),p) > ma(data1(C[1]),p) Buy(); -->d } 2,시스템 신호 중 -->a,-->c 는 실패로보구 비표시 -->b,-->d 성공으로보구 시스템표시 이렇게 재 작성 좀 해주세요. 간단하게 하면되는데 풀어쓰는 이유는 if 문b,d에 좀 많은것을 넣어 보려구요. 3.그럼 즐거운 하루 되세요.
프로필 이미지
성공예견
2021-10-23
558
글번호 153098
시스템
답변완료

봉길이 수치표시

안녕하세요 1.H-L의 봉길이 / 0.05 의 수치값을 봉길이 변화에 따라 해당봉 우측에 표시되게 부탁드립니다 2. HL강조봉으로 현재 C가 H를 밀어올리면서 상승하고 있다는 내용(RED)을 나타내고 싶습니다 부탁드립니다 감사합니다
프로필 이미지
bestkim
2021-10-23
754
글번호 153097
지표

jesten77 님에 의해서 삭제되었습니다.

프로필 이미지
jesten77
2021-10-22
4
글번호 153096
시스템
답변완료

문의드립니다.

선물차트 기준으로 문의드립니다. price channel 지표에서 top선과 bot선의 중간선을 나타내고자 합니다. 수식을 어떻게 작성해야 하는지요? 변수의 length 기간값은 수정가능하게 부탁드립니다. 부탁드립니다. 그리고 감사합니다.!!!
프로필 이미지
해암
2021-10-22
676
글번호 153089
지표

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

프로필 이미지
신대륙발견
2021-10-22
21
글번호 153088
시스템
답변완료

수식변환 부탁 드립니다

키움에서 사용 하고 있는 수식 입니다. 예스로 변환 부탁 드릴께요. <수식1> valuewhen(1, c>o*k, (c-o)/4*3+o) <수식2> valuewhen(1, c>o*k, (c-o)/4*2+o) <수식3> valuewhen(1, c>o*k, (c-o)/4+o) k값 : 1.000 상승과 하락 라인색을 구분 할수 있게 하고 색채우기를 할수 있도록 외부변수로 가능 하게 할수 있으면 합니다. 감사합니다.^^
프로필 이미지
참아람
2021-10-22
807
글번호 153085
지표
답변완료

검색

수고많으십니다 1]10분과30부의 왼쪽캔들12의 고/저 돌파시 매수/매도 2)10분과30분의 신호가 챠트상에 동시에 나타날때 매수/매도진입 [검색식] [시스템식] 1)10분과30분의 신호가 챠트상에 동시에 나타날때 매수/매도진입 2)매수매도진입조건이맞을때 기준은3분봉캔들의 종가에 진입한다 3)단 알품은 캔들(고가저가가 앞캔들보다 작은캔들=고가저가돌파하저나 깨지않은 캔들)에서는 진입하지않는다 4)매수는 양봉에서만 진입 매도는 음봉에서만 진입 손절 1)매수매도 진입시 익절이되지않은 현재 캔들이 앞캔들의 고/저를 깨는 즉시 청산 2)10분과 30분의 동시신호가 진행될때 반복진입 청산 한다 3)손절50/익절50 (330만계좌) (1계약 거래) 나스닥(손절50.익절50)(거래시간22;25~01:00) 항셍(손절,익절50)(거래시간10:15~12:00) 골드(손/익절50)(거래20:20~22:10) ************************** 1]10분봉은 현재 캔들이 이전 캔들고가/저가돌파시 매수신호/매도신호 2]10분봉은 현재 캔들이 왼쪽 12캔들고가/저가돌파시 매수신호/매도신호 3]이전캔들의 돌파신호와 12캔들의 고/저진입신호가 다른 표시로 나오게 해주십시요 [검색식] [시스템식] 1)10분과30분의 신호가 챠트상에 동시에 나타날때 매수/매도진입 2)매수매도진입조건이맞을때 기준은3분봉캔들의 종가에 진입한다 3)단 알품은 캔들(고가저가가 앞캔들보다 작은캔들=고가저가돌파하저나 깨지않은 캔들)에서는 진입하지않는다 4)매수는 양봉에서만 진입 매도는 음봉에서만 진입 손절 1)매수매도 진입시 익절이되지않은 현재 캔들이 앞캔들의 고/저를 깨는 즉시 청산 2)10분과 30분의 동시신호가 진행될때 반복진입 청산 한다 3)손절50/익절50 (330만계좌) (1계약 거래) 나스닥(손절50.익절50)(거래시간22;25~01:00) 항셍(손절,익절50)(거래시간10:15~12:00) 골드(손/익절50)(거래20:20~22:10) ************************** 1]10분봉의 왼쪽12 고가/저가 매수/매도후 동일방향으로 계속 진행될때 각캔들마다 추가신호 표시 [검색]
프로필 이미지
jesten77
2021-10-22
935
글번호 153082
검색