커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8140
글번호 230811
답변완료
수식 부탁합니다
안녕하십니까?
매수
Trix (5,3) 에서 지표값이 신호선 -0.01를 상향 돌파
그리고
주가 단순이동평균선 0봉 기준 1봉이내에서 주가가 MA 3선 위에 있고
그리고
주가 단순이동평균선 0봉 기준 1봉이내에서 주가가 MA 10선 위에 있을 때
그리고
주가 단순이동평균선 0봉 기준 1봉이내에서 주가가 MA 20선 위에 있을 때
그리고
RSI (11,7) 에서 RSI 값이 30 이하
그리고
RSI (14,7) 에서 RSI 값이 30 이하
그리고
Stochastic Slow(12,5)에서 Stoc K 값이 20 이하
그리고
Stochastic Slow(20,5)에서 Stoc K 값이 20 이하
상기 8개의 식 모두를 만족 할 때 => 시스템 매수
매도
Trix (5,3) 에서 지표값이 신호선 +0.01을 하향 돌파
그리고
주가 단순이동평균선 0봉 기준 1봉이내에서 주가가 MA 3선 아래에 있고
그리고
주가 단순이동평균선 0봉 기준 1봉이내에서 주가가 MA 10선 아래에 있을 때
그리고
주가 단순이동평균선 0봉 기준 1봉이내에서 주가가 MA 20선 아래에 있을 때
그리고
RSI (11,7) 에서 RSI 값이 70 이하
그리고
RSI (14,7) 에서 RSI 값이 70 이하
그리고
Stochastic Slow(12,5)에서 Stoc K 값이 80 이하
그리고
Stochastic Slow(20,5)에서 Stoc K 값이 80 이하
상기 8개의 식 모두를 만족 할 때 => 시스템 매도
추가 질문입니다.
상기 식에서와 같이~ 제가 이평선 조건을 수개 더 추가할 때~ 수식에 추가로
주의하여 작성하여야 하는 점과 RSI 또는 Stochastic Slow의 변수 값을 변경
또는 수식에 추가할 때, 주의해야 하는 점을 알려주시면 감사하겠습니다.
대단히 감사합니다. 수고하십시요.
2015-03-04
239
글번호 83674
답변완료
문의 드립니다.
1.
Input : Period(20), D(2);
var : BBdown(0),BBUp(0),BandB(0);
BBDown = BollBandDown(Period,D);
BBUp = BollBandUp(Period,D);
BandB = ((C-BBDown)/(BBUp-BBDown))*100;
Plot1(BandB, "Band %b");
PlotBaseLine1(10, "기준선10");
PlotBaseLine2(90, "기준선90");
................................................................................
2.
Input : Period(5);
Input : P(20);
var : HH(0),LL(0),cnt(0),RR(0),mid(0);
Array : mav[100](0);
mav[1] = ma(c,Period*1);
mav[2] = ma(c,Period*2);
mav[3] = ma(c,Period*3);
mav[4] = ma(c,Period*4);
mav[5] = ma(c,Period*5);
mav[6] = ma(c,Period*6);
mav[7] = ma(c,Period*7);
mav[8] = ma(c,Period*8);
mav[9] = ma(c,Period*9);
mav[10] = ma(c,Period*10);
mav[11] = ma(c,Period*11);
mav[12] = ma(c,Period*12);
mav[13] = ma(c,Period*13);
mav[14] = ma(c,Period*14);
mav[15] = ma(c,Period*15);
mav[16] = ma(c,Period*16);
mav[17] = ma(c,Period*17);
mav[18] = ma(c,Period*18);
mav[19] = ma(c,Period*19);
mav[20] = ma(c,Period*20);
mav[21] = ma(c,Period*21);
mav[22] = ma(c,Period*22);
mav[23] = ma(c,Period*23);
mav[24] = ma(c,Period*24);
mav[25] = ma(c,Period*25);
mav[26] = ma(c,Period*26);
mav[27] = ma(c,Period*27);
mav[28] = ma(c,Period*28);
mav[29] = ma(c,Period*29);
mav[30] = ma(c,Period*30);
mav[31] = ma(c,Period*31);
mav[32] = ma(c,Period*32);
mav[33] = ma(c,Period*33);
mav[34] = ma(c,Period*34);
mav[35] = ma(c,Period*35);
mav[36] = ma(c,Period*36);
mav[37] = ma(c,Period*37);
mav[38] = ma(c,Period*38);
mav[39] = ma(c,Period*39);
mav[40] = ma(c,Period*40);
mav[41] = ma(c,Period*41);
mav[42] = ma(c,Period*42);
mav[43] = ma(c,Period*43);
mav[44] = ma(c,Period*44);
mav[45] = ma(c,Period*45);
mav[46] = ma(c,Period*46);
mav[47] = ma(c,Period*47);
mav[48] = ma(c,Period*48);
mav[49] = ma(c,Period*49);
mav[50] = ma(c,Period*10);
if mav[50] > 0 then{
HH = mav[1];
LL = mav[1];
for cnt = 1 to 50
{
if mav[cnt] > HH Then
HH = mav[cnt];
if mav[cnt] < LL Then
LL = mav[cnt];
}
RR = HH-LL;
mid = ma(RR,P);
Plot1(RR/mid*100, "이격도");
PlotBaseLine1(100);
}
......................................................................................
1번과 2번 지표의 데이타2용 지표를 각각 만들고 싶습니다.
* 추가로 문의 드립니다
1.
var1 = disparity(5);
Var2 = disparity(10);
Var3 = disparity(20);
var4 = disparity(60);
var5 = disparity(120);
plot1(Var1);
plot2(Var2);
plot3(Var3);
plot4(Var4);
plot5(Var5);
PlotBaseLine1(100);
2.
Input : Period(5);
Input : P(20);
var : HH(0),LL(0),cnt(0),RR(0),mid(0);
Array : mav[100](0);
mav[1] = ma(c,Period*1);
mav[2] = ma(c,Period*2);
mav[3] = ma(c,Period*3);
mav[4] = ma(c,Period*4);
mav[5] = ma(c,Period*5);
mav[6] = ma(c,Period*6);
mav[7] = ma(c,Period*7);
mav[8] = ma(c,Period*8);
mav[9] = ma(c,Period*9);
mav[10] = ma(c,Period*10);
mav[11] = ma(c,Period*11);
mav[12] = ma(c,Period*12);
mav[13] = ma(c,Period*13);
mav[14] = ma(c,Period*14);
mav[15] = ma(c,Period*15);
mav[16] = ma(c,Period*16);
mav[17] = ma(c,Period*17);
mav[18] = ma(c,Period*18);
mav[19] = ma(c,Period*19);
mav[20] = ma(c,Period*20);
mav[21] = ma(c,Period*21);
mav[22] = ma(c,Period*22);
mav[23] = ma(c,Period*23);
mav[24] = ma(c,Period*24);
mav[25] = ma(c,Period*25);
mav[26] = ma(c,Period*26);
mav[27] = ma(c,Period*27);
mav[28] = ma(c,Period*28);
mav[29] = ma(c,Period*29);
mav[30] = ma(c,Period*30);
mav[31] = ma(c,Period*31);
mav[32] = ma(c,Period*32);
mav[33] = ma(c,Period*33);
mav[34] = ma(c,Period*34);
mav[35] = ma(c,Period*35);
mav[36] = ma(c,Period*36);
mav[37] = ma(c,Period*37);
mav[38] = ma(c,Period*38);
mav[39] = ma(c,Period*39);
mav[40] = ma(c,Period*40);
mav[41] = ma(c,Period*41);
mav[42] = ma(c,Period*42);
mav[43] = ma(c,Period*43);
mav[44] = ma(c,Period*44);
mav[45] = ma(c,Period*45);
mav[46] = ma(c,Period*46);
mav[47] = ma(c,Period*47);
mav[48] = ma(c,Period*48);
mav[49] = ma(c,Period*49);
mav[50] = ma(c,Period*10);
if mav[50] > 0 then{
HH = mav[1];
LL = mav[1];
for cnt = 1 to 50
{
if mav[cnt] > HH Then
HH = mav[cnt];
if mav[cnt] < LL Then
LL = mav[cnt];
}
RR = HH-LL;
mid = ma(RR,P);
Plot1(RR/mid*100, "이격도");
PlotBaseLine1(100);
}
1번과 2번식을 결합해서 하나의 식으로 나타내 주세요
감사합니다.
2015-03-04
238
글번호 83673
답변완료
질문입니다
당일매매횟수 제한을 하고 싶습니다
매수신호가 먼저 나와서 다양한 청산으로 나왔다면 매도 1회 기회더 부여
매도신호가 먼저 나왔다면 끝
감사합니다
2015-03-04
212
글번호 83672
답변완료
부탁 합니다
MACD (12,26,9) 스토캐스틱 슬로우 (10,5,5)
매수 진입
MACD 0 이하에서 골든크로스 발생 그리고 스토캐스틱 K 값이 20 이하일때 선물 1계약 매수
매수 청산 : 10이평선과 20이평선 데드크로스 발생시
매도 진입 :
MACD 데드크로스 발생 그리고 스토캐스틱 K값이 80 이상 일 때 선물 1계약 매수
매도 청산
10이평선과 20이평선 골든크로스 발생시
시스템식이 분봉 뿐만 아니라 틱차트에서도 적용 될 수 있도록 부탁합니다
2015-03-04
232
글번호 83671
미래테크 님에 의해서 삭제되었습니다.
2015-03-04
0
글번호 83670
관리자에 의해 프로그램 사용법 QnA로 이동되었습니다
2015-03-04
7
글번호 83669
답변완료
시스템 수식 점검 부탁드립니다.
if stime == 144800 and C < DayOpen And
C < DayClose(1) Then
buy();
if stime == 144800 and C > dayopen And
C > DayClose(1) Then
sell();
위 수식으로 테스트 결과 잘 작동함을 확인했습니다.
죄송하지만 제가 조건에 대한 설명을 제대로 하지 않은것 같습니다.
혹시나 제가 바라는 조건이 수식화가 가능한지 한번더 문의 드립니다.
당일의 일봉이 음봉일 경우 144800에 매수를 하되
분할 매수의 방식입니다. 즉, 음봉이 발생할때마다 "설정된 금액"만큼 계속 매수를 하는
것입니다.
그리고
당일의 일봉이 양봉일 경우 144800에 매도를 하되 전일종가 보다 낮으면 매도를 하지 않습니다. 그리고 이때 매도의 금액은 매수시에 "설정된 금액"만큼씩만 분할매도를 하는 방식입니다.
즉, 음봉일때 마다 매수를 하고 양봉일때마다 매도를 하되 일괄매도가 아닌 매수시에 설정된 금액만큼씩 분할매도를 하는 방식입니다.
수식으로 가능할런지요??
부탁드립니다.
2015-03-03
249
글번호 83668
byonsky 님에 의해서 삭제되었습니다.
2015-03-03
0
글번호 83667
답변완료
수식 부탁드립니다.
안녕하세요?
예스 랭귀지 이제 막 시작한 초보입니다.
일단 전략분석을 위해 Data를 저장한후 분석을 좀 하고 싶어서 예스 랭귀지를 활용하려고 합니다.
제가 원하는 기능은 아래와 같습니다.
KOSPI 200 지수와 선물 지수가 옵션의 행사가격 사이에 있을때,
양 끝 행사가격에 대한 콜/풋 옵션의 매도호가 및 잔량,매수호가 및 잔량, 각종 Greek등을 txt나 csv 파일로 저장하고 싶습니다.
예를 들어
KOSPI 200 지수가 254.5 이고, 3월물 선물 지수가 254.7 일때,
행사가가 252.5 인 콜옵션 및 풋옵션 그리고 행사가가 255 인 콜옵션의 풋옵션에 대해
1.4개 옵션의 매도호가 및 잔량
2.4개 옵션의 매수호가 및 잔량
3.4개 옵션의 Greek(Delta, Gamma, Theta, Vega)
를 20150304.txt(혹은 csv) 파일로 저장하고 싶습니다.
처음 시작하는거라 아직 개념이 안잡혀서 어려움이 많네요.
부탁드리겠습니다. ^^
2015-03-03
282
글번호 83666