커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
5440
글번호 230811
답변완료
다음 내용의 산식 부탁드립니다
다음을 동시에 만족하는 산식 부탁 드립니다.
1. 나스닥 1분봉 사용
2. 현재 가격이 A 또는 B 또는 C 일때 매수진입
- 단, 매수진입시 각 가격 보다 40틱 높은가격에서 선진입
3.현재 가격이 D 또는 E 또는 F 일때 매도진입
- 단, 매도진입시 각 가격 보다 40틱 낮은가격에서 선진입
4. 매수 포지션, 매도 포지션 각각 진입 후
(각 가격 A~F에서의 기준으로) 320틱 수익시 익절, 140틱 손해시 손절
5. 당일 총수익 500틱이면 매매종료,
당일 총손실 300틱이면 매매종료
2024-04-03
1149
글번호 178245
답변완료
함수요청
안녕하세요?
Band Width가 2번 이상 연속 하락하다가 2번 이상 연속 상승하되 종가상 주가가 볼린저 밴드 상단선을 이탈하면 익봉시가에 매수 진입
Band Width가 2번 이상 연속 하락하다가 2번 이상 연속 상승하되 종가상 주가가 볼린저 밴드 하단선을 이탈하면 익봉시가에 매도 진입
Band Width가 2번 이상 연속 상승하다가 2번 이상 연속 하락하면 익봉시가에 매수청산, 매도 청산
2024-04-03
1108
글번호 178244
답변완료
함수요청
안녕하세요?
Band Width가 직전 봉대비 현재 봉 값이 감소하면 익봉 시가에 청산하는 함수를 넣어 스크립트 샘플 부탁드립니다.
2024-04-03
1122
글번호 178243
답변완료
수식 작성 부탁드립니다
코스피200 선물 가격움직임에 따라
콜 옵션 풋옵션 매수 매도가 가능하도록 수식 작성 바랍니다
(data2의 지수(수식) 기준으로 data1 주문이 실행되지 않는다는 답변은 보았습니다)
선물 5분 챠트에서 종가가 20 이동평균선을 돌파 할때
5분 챠트 등가 콜옵션 매수, 등가 풋옵션 매도가 실행되도록 수식 부탁 드립니다.
2024-04-03
1092
글번호 178239
답변완료
양,음,0 의 조건 값 중 조건 맞는 수식 부탁드려요
var1 = data2(o)-data7(o);
var2 = data3(o)-data8(o);
var3 = data4(o)-data9(o);
var4 = data5(o)-data10(o);
var5 = data6(o)-data11(o);
var6 = data12(o)-data13(o);
var7 = data14(o)-data15(o);
var8 = data16(o)-data17(o);
1. var1~var8 값 중에서 양의 값에서 가장 값이 작은 값을 나타나게 해주세요.
2. 1번 값의 종목들의 시가를 나타나게 해주세요(var1 값이 가장 작을경우 data2(o),data7(o) 시가 값을 표현)
3. 1번 값의 종목들의 시가 양합 - 1번 값의 종목 당일 시가 양합 표현
4. var1~var8 값 중에서 음의 값에서 가장 값이 큰 값을 나타나게 해주세요.
5. 4번 값의 종목들의 시가를 나타나게 해주세요(var5 값이 가장 클 경우 data6(o),data11(o) 시가 값을 표현)
6. 4번 값의 종목들의 시가 양합 - 4번 값의 종목 당일 시가 양합 표현
7. var1~var8 값 중에서 0 값이 나타나면 1,4조건 지표는 표시되지 않게 해주세요.
8. 7번 값의 종목들의 시가를 나타나게 해주시고 2,5 조건 지표는 표시되지 않게 해주세요.
9. 7번 값의 종목들의 시가 양합 - 7번 값의 종목 당일 시가 양합 표현 해주시고, 3,6 조건 지표는 표시되지 않게 해주세요.
언제나 지표 수식에 도움 주셔서 감사합니다.
2024-04-03
976
글번호 178238
코퍼 님에 의해서 삭제되었습니다.
2024-04-03
2
글번호 178236
2wnwn 님에 의해서 삭제되었습니다.
2024-04-03
17
글번호 178234
답변완료
검색식 확인 부탁드립니다.
다시 한번 질문을 드립니다.
새로 주신 수식은 월봉종가를 월봉시가로 바꾼 것 같은데요....
그럼 역시나 많은 종목들이 검색이 됩니다.
당일 즉 검색하는 일에 그 날 일봉시가로 돌파해야 하는데...아래의 수식은 당월시가로 돌파하는 것 같은데요...
별도로 당일시가에 대한 정의나 수식을 추가해서 크로스업 당월시가O가 당일시가로 바뀌어야 하는 것 아닌가 싶습니다.
거듭 죄송하네요... ^^;;;
안녕하세요
예스스탁입니다.
CrossUp(C,mx)
예를 들어 위 수식에 보시면 종가(현재가)로 mx를 돌파하는 내용입니다.
C를 O로 변경하시면 시가가 돌파하는 것으로 변경됩니다.
1
var : MM(0),KK(0),MO(0),mx(0);
var : M1(0),M2(0),M3(0),M4(0),M5(0),M6(0);
var : M7(0),M8(0),M9(0),M10(0),M11(0),M12(0);
MM = floor(date/100);
if MM != MM[1] Then
{
var1 = O;
M1 = KK[1];
M2 = M1[1];
M3 = M2[1];
M4 = M3[1];
M5 = M4[1];
M6 = M5[1];
M7 = M6[1];
M8 = M7[1];
M9 = M8[1];
M10 = M9[1];
M11 = M10[1];
M12 = M11[1];
mx = Max(M1, M2, M3, M4, M5,M6, M7, M8, M9, M10, M11, M12);
}
KK = iff(MO > C, MO, 0);
if mx > 0 and CrossUp(O,mx) Then
Find(1);
2.
var : 당월시가(0),전월시가(0);
var : 당월종가(0),전월종가(0);
if sDate > sDate[1]+30 Then
{
당월시가 = O;
전월시가 = 당월시가[1];
전월종가 = 당월종가[1];
}
당월종가 = C;
if 전월시가 > 0 Then
{
var1 = ((전월시가+전월종가)/2 + 당월시가)/2;
if CrossUp(O,var1) Then
Find(1);
}
즐거운 하루되세요
2024-04-03
831
글번호 178232
답변완료
문의
아래 수식은
T1 -> T2 -> T3을 순서대로 만족하고
c>Opend(0)+fy 이면 진입하는 수식입니다.
요청하는 내용은 개념으로 보면 !(T1 -> T2 -> T3) 입니다.
순서대로 T1 -> T2 -> T3를 충족하는 경우에는 진입을 제지하는 조건으로 수정하고 싶습니다.
일전에 비슷한 내용을 요청드렸는데 진입순서가 필요한 내용이었습니다.
그래서 진입순서를 넣어서 재차 요청드립니다.
**************************************************************************
input : ma1(2),ma2(3),ma3(4);
input : fy(0.7);
var : T(0);
var1=ma(c,ma1);
var2=ma(c,ma2);
var3=ma(c,ma3);
if Bdate != Bdate[1] Then
T = 0;
if T == 0 and CrossUp(c,var1) Then
T = 1;
if T == 1 and CrossDown(c,var2) Then
T = 2;
if T == 2 and CrossUp(c,Var3) then
T = 3;
if T == 3 and c>Opend(0)+fy then
{
T = 4;
buy();
}
2024-04-03
918
글번호 178231