커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6635
글번호 230811
답변완료
타주기 구현
안녕하세요
궁금한 사항이 있어 질문올립니다
분봉에서 일봉 이평을 그리기 위해선 아래와 같은 코드가 필요합니다
input : P1(5);
var : sumV(0), maV(0), count(0);
sumV = 0;
for count = 0 to P1-1 {
sumV = sumV+DayClose(count);
}
maV = sumV / P1;
plot1(mav,"분봉에서일봉이평");
질문드립니다
- 화면구성 DATA1, DATA2 : 둘다 분봉차트(예:5분)
1. DATA1, DATA2 의 일봉데이타로 60일 이격도 표현 지표 : 지표에 선이 2개 나오겠죠.
2. DATA1, DATA2 의 분봉(5분이상)데이타로 60일 이격도 표현 지표 : 지표에 선이 2개 나오겠죠.
답변부탁드려요
2015-03-04
211
글번호 83692
답변완료
부탁드립니다
추세선지표을 만들었을때
고점과 고점
저점과 저점 연결시
우측으로 연장되도록 해주는 수식 부탁 드립니다
2015-03-04
184
글번호 83691
답변완료
문의드립니다.
당일 꼬리가 아닌 종가상 최고가를 찍은 봉을 저장한후에
그봉이 양봉일경우 종가를 저장,음봉일 경우 시가를 저장.(var1로 지정했을경우)
그다음봉부터 var1보다 2개이상 종가상 적은 봉들이 출현.
현재봉종가가 var1보다 클경우 매수(조건:var1길이(몸통부분만)의 2배이내일경우만 매수)
수식 부탁드립니다.
항상 감사드립니다.
2015-03-04
170
글번호 83690
아싸가오리 님에 의해서 삭제되었습니다.
2015-03-04
0
글번호 83689
아싸가오리 님에 의해서 삭제되었습니다.
2015-03-04
0
글번호 83688
답변완료
수식 부탁드립니다
수고하십니다.
매수 : 90틱봉 에서 가격이 LRL(100) 라인 위에 위치하고
DMI(14)에서 D1 PLUS 가 D1 MINUS 를 돌파할때
청산 및 손절 : 90틱봉 에서 DMI(14)에서 D1 PLUS 가 D1 MINUS 를 하향할때
매도 : 90틱봉에서 가격이 LRL(100) 라인 아래에 위치하고
DMI(14)에서 D1 MINUS 가 D1 PLUS 를 돌파할때
청산 및 손절 : 90틱봉 에서 DMI(14)에서 D1 MINUS 가 D1 PLUS 를 하향할때
Input : LRLP(100),DMIP(14);
var : LRLv(0),DP(0),DM(0);
LRLv = LRL(C,LRLP);
DP = DIPlus(DMIP);
DM = DIMinus(DMIP);
if C > LRLv and crossup(DP,DM) Then
buy();
if MarketPosition == 1 and CrossDown(DP,DM) Then
ExitLong();
if C < LRLv and CrossDown(DP,DM) Then
Sell();
if MarketPosition == -1 and CrossUp(DP,DM) Then
ExitShort();
지금 위 수식을 아래 매수 매도 를 추가로 넣어서
키움수식으로 전환 부탁드립니다
매수 : trix trix(12) 가 시그널(8) 를 위로 돌파할때
매도 : trix 시그널(8)이 trix (12) 를 아래로 하향할때
2015-03-04
224
글번호 83682
답변완료
문의드립니다.
안녕하세요
현재의 식을 B 라는데 저장하는방법을 부탁드립니다.
if highest(H,BarsSinceEntry) >= EntryPrice+1 and highest(H,BarsSinceEntry) <= EntryPrice+20 Then
Sell("bx",AtLimit,Highest(H,BarsSinceEntry)-1);
2015-03-04
172
글번호 83681
답변완료
수식 부탁합니다
안녕하십니까?
매수
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
191
글번호 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
179
글번호 83673