커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7423
글번호 230811
답변완료
부탁 드립니다.
42738번의 재질문 입니다.
답변 수식(2번 완성봉시)을 실행 해보면
유로화에서는 지표값이 0에서 2사이에서 변동하나
오일에서는 지표값이 0 에서 40 근처까지 변동 하여 정상적이지 않아 보입니다.
어떻게 하여야 하는 지요?
미리 감사와 경배 올립니다.
답변된 수식)
Input: Atime(10),p1(5);
Var: Cnt(0),HH(0),LL(0);
var : count(0),sum1(0),mav1(0),sum2(0),mav2(0),TF(0);
Array: tp[100](0), upv[100](0),dnv[100](0);
Array : OO[100](0),CC[100](0);
TF = TimeToMinutes(stime)%Atime;
if dayindex() == 0 or (TF < TF[1] and stime > stime[1]) Then{
OO[0] = O;
for cnt = 1 to 99{
OO[cnt] = OO[cnt-1][1];
CC[cnt] = CC[cnt-1][1];
}
}
CC[0] = C;
if CC[P1+1] > 0 and dayindex() == 0 or (TF < TF[1] and stime > stime[1]) Then{
sum1 = 0;
sum2 = 0;
for count = 0 to P1-1{
sum1 = sum1+CC[count+1];
sum2 = sum2+CC[count+2];
}
mav1 = sum1/P1;
mav2 = sum2/P1;
If (CC[1] < mav1 and CC[2] >= mav2) Then
{
tp[0] = (OO[1] + CC[1]) / 2;
For Cnt = 1 To 99
{
tp[Cnt] = tp[Cnt -1][1];
}
}
for cnt = 0 to 99
{
if tp[cnt] >= C Then
upv[cnt] = tp[cnt];
Else
upv[cnt] = 2;
if tp[cnt] <= C Then
dnv[cnt] = tp[cnt];
Else
dnv[cnt] = 0;
}
HH = 2;
LL = 0;
for cnt = 0 to 99
{
if upv[cnt] < HH Then
HH = upv[cnt];
if dnv[cnt] > LL Then
LL = dnv[cnt];
}
plot1(HH,"상승변곡");
plot2(LL,"하락변곡");
}
2016-05-10
196
글번호 97885
답변완료
타주기 적용 시스템변경
항상 감사드립니다
아래시스템식을 data1,data2로 나누어 타주기챠트에 적용할수 잇도록 수정해주시기 바랍니다.
진입 : 주챠트신호(1분봉) and 타주기 챠트(20틱)
청산 : 타주기챠트
####################
###신거래선 기준 ###
####################
if V == highest(V,240) Then
var60 = (C+H+L)/3; #240거래선#
######################
### 거래선_60 ########
######################
var : upv1(0),upv2(0),upv3(0);
var : dnv1(0),dnv2(0),dnv3(0);
var : upv11(0),upv12(0),upv13(0);
var : dnv11(0),dnv12(0),dnv13(0);
var : upv21(0),upv22(0),upv23(0);
var : dnv21(0),dnv22(0),dnv23(0);
If V== highest(V,60) then{
Var71 = (C+H+L)/3;
var72 = var71[1];
if var71 > var72 Then{
upv1 = var71;
upv2 = upv1[1];
upv3 = upv2[1];
if upv1 > upv2 and upv2 > upv3 Then
var70 = 1;
}
if var71 < var72 Then{
dnv1 = var71;
dnv2 = dnv1[1];
dnv3 = dnv2[1];
if dnv1 < dnv2 and dnv2 < dnv3 Then
var70 = -1;
}
}
###################
###### aroon ######
###################
input : Period10(20);
var : Counter(0), Lowval(0), Highval(0), DownVel(0),UpVel(0), DnAroon(0),UpAroon(0) ;
Lowval= Lowest(Low, Period10+1);
Highval = Highest(High, Period10+1);
For counter= 0 To Period10 {
If Low[counter] == Lowval Then
DownVel = counter;
If High[counter] == highval Then
UpVel = counter;
}
DnAroon = 100*(Period10-DownVel)/Period10;
UpAroon = 100*(Period10-UpVel)/Period10;
#####################################
##### 션샤인 보조_2호(macd_sar) #####
#####################################
input : short1(12),long1(26),signal1(9),af(0.02),maxaf(0.2);
var : XX(0),YY(0);
var7 = MACD(short1,long1);#MACD
var8 = ema(var7,Signal1);#MACD sig
var9 = sar(af,maxaf); #파라볼릭
if var7 > var8 Then{
if C > var9 Then
XX = 6;
Else
XX = 2;
}
Else{
if var9 > C Then
XX = -6;
Else
XX = -2;
}
if var7 > 0 Then
YY = 10;
Else
YY = -10;
if (XX+YY)>0 Then
var12 = 1; # buy();
if (XX+YY)<0 Then
var12 = -1; # sell();
### 동일방향 재진입금지/전일 마지막신호와 무관하게 진입 ###
var : entrycnt(0);
if stime == 170000 or (stime > 170000 and stime[1] < 170000) Then # 현지시간_뉴욕 17:00 장시작 #
Entrycnt = 0;
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
Entrycnt = Entrycnt+1;
if (stime >= 170000 or stime < 143000) Then{ # 현지시간_뉴욕 17:00 장시작~익일 14:30 장종료 #
if ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) or (MarketPosition == -1)) and #동일방향 재진입금지#
매수조건 Then
buy("B_30");
if ((entrycnt == 0) or (entrycnt >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) or (MarketPosition == 1)) and #동일방향 재진입금지#
매도조건 Then
sell("S_30");
}
###############################
##### 청산 시스템 #####
###############################
if MarketPosition == 1 and 타주기매도조건 then
exitlong("eB_타주기");
if MarketPosition == -1 and 타주기매수조건 Then
ExitShort("eS_타주기");
2016-05-10
143
글번호 97883
질갱이 님에 의해서 삭제되었습니다.
2016-05-10
10
글번호 97880
답변완료
참조 데이터 사용하고싶습니다.
1.외국인 선물 순매수수량이 1000이상이고
2.금융투자 순매수금액이 개인 순매수금액보다 크면
3.가격이 20일선 돌파시 매수
적용방법(차트 셋팅방법) 부탁드립니다^^
2016-05-10
131
글번호 97879
답변완료
문의드립니다.
1. 이평 1 이평 2 위에 있고 알에스아이 50 을 세번째 상향돌파할때 매도
이평 1 이평 2 아래 있고 알에스아이 50 을 세번째 하향돌파할때 매수
오전 7시 시작 새벽 5시50분 종료.
그럼 부탁드리겠습니다.
2016-05-10
136
글번호 97878
답변완료
수식부탁드립니다
1.
틱차트에서 당일 오전9시부터 오후12시까지의 30분마다 평균거래량의 평균치
예)
9시 - 9시30 = 1000주
9시30 - 10시 = 2000주
10시 - 10시30 = 500주
10시30 - 11시 = 2500주
11시 - 11시30 = 500주
11시30 - 12시 = 1000주
12시가 되면 평균을 계산
A = (1000 + 2000 + 500 + 2500 + 500 + 1000) / 6
A값을 지표로 볼 수 있게 부탁드립니다.
2.
틱차트에서
각 30분단위로 거래량값을 지정 (BB라고 가정하고)
9시 - 9시30 = 2000주
9시30 - 10시 = 3000주
10시 - 10시30 = 5000주
10시30 - 11시 = 3500주
11시 - 11시30 = 1500주
11시30 - 12시 = 2000주
.....
2시30 - 15시 = 4000주
이렇게 BB의 값을 미리 지정하고
틱차트에서 이 시간동안 BB값이 지정된 값을 넘을 매수 하는 수식 부탁드립니다.
예를들어
9시30분 - 10시 의 BB값을 3000주로 지정해놨을 때
9시44분에 3000주를 넘는 거래량이면 매수
감사합니다
2016-05-10
136
글번호 97877
답변완료
시스템 수식 부탁드립니다
1) 최근 20일 고가와 저가 사이 가격대의 상단 80%를 돌파시 매수
최근 20일 고가와 저가 사이 가격대의 하단 20%를 하향 돌파시 매도
손절선은 전체 자본 계정의 2%
2) 위 수식에 1/2ATR(20) 가격대가 올라갈 때마다 피라디밍 매수하여 총 4번까지 진입
2016-05-10
143
글번호 97876
답변완료
시스템 수식 작성 부탁드려요
이런 수식을 만들어보려고 하는데 수식 작성 좀 부탁드려요
기본 전제 : 전일의 종가와 당일봉의 시가 고가 저가 거래량을 알아내고 그것을 정보로 가져오고 시스템 매수는 10틱의 분봉차트에서 매수
차트는 10틱 1바 상태로 아침에 장시작전에 자동매매 돌려두는 것을 전제로 합니다.
만들 수식은 다음과 같습니다.
--------------------------------------------------------------------
그 종목의 전날 종가보다 그 종목의 당일 시가가 +3% 이상 and +25%미만이고(+3%<=시가<+25%)
그 종목의 현재까지의 거래량이 전날 거래량의 60프로 이하이고
현재가가 어제 종가 대비 -2프로 이하라면 현재가로 바로 매수한다.
여기서 매수는 10틱 차트에서 봉 하나가 완성될 때 위에 내용을 만족하는지 확인 후 위에 조건을 모두 만족한다면 다음 봉 시초가에 매수가 되도록 할 것 입니다.
좋은 하루 되세요^^
2016-05-10
161
글번호 97875
답변완료
라인및리셋문의
그림과같이구현할려고 몇칠고생했는데 아무리지난글을 찾아도 나오질않네여
당일 시가에 새롭게시작합니다
(highest(h,120)-80틱)
(lowest(l,120)+80틱)
Plot1(var1, "고가아래");
Plot2(var2, "저가위");
2016-05-10
177
글번호 97874