커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7738
글번호 230811
답변완료
시스템식 문의 드립니다.
안녕하세요
하나하나 배워서 너무 기쁩니다
매수진입조건
condition1 = c > highest(c,12)[1] and
1000 <= V and V <= 7000 And
100.01 <= Disparity(2) and Disparity(2) <= 100.10 And
100.00 <= Disparity(5) and Disparity(5) <= 100.20 And
ma(V,1) > ma(V,3) And
ma(v,2) > ma(v,3) and
ma(v,1) > ma(v,7);
if Condition1 or Condition2 Then
buy();
1, 위와 같은 상황에서 추가로 condition1 안에 볼린져밴드 하한선(20,2)이
전봉 볼린져밴드 하한선(20,2) 보다 작을때 산식을 산입하고자 합니다.
2. 위와 같은 상황에서 추가로 condition1 안에 볼린져밴드 하한선(20,2)이
2봉연속 볼린져밴드 하한선(20,2) 보다 작을때 산식을 산입하고자 합니다.
모쪼록 감사드립니다.
2011-03-25
910
글번호 36932
답변완료
3000개 봉이내에서 갭수치계산식 질문
갭보정수식으로 시스템을 만들었 보았는..
실전 모투 매매에서 오류가 있더군요
그러니깐 10년치데이터로 시뮬을 하면 10년치데이터의 누적gap이 계산되는 데
실제 실시간차트에서는 5000개가 한도라 누적gap수치의 차이가 있더군요
그래서 시뮬자체를 봉개수5000, 3000개 제한해서 누적gap을 계산해서 적용해보고 싶은데
for문을 응용하면 될꺼 같은데... 이런 로직에 워낙 잼병이다 보니 수식이 안떠오르네요.
수식을 부탁드립니다.
2011-03-25
1017
글번호 36927
답변완료
누적분봉 수식
안녕하세요.. 내일이면 주말이네요~
다음 수식 부탁드립니다.
주데이타 1분봉 연결선물일 때,
1) 참조데이타를 사용하지 않고
2) 매 30분 단위로 (09:30, 10:00, 10:30....)
3) 30분단위 첫 6분간의 시고종저 값 (즉, 09:30~09:36의 시고종저,
10:00~10:06의 시고종저.....// 6분봉 개념으로, 1분봉 6개 기간의 시고종저가 되겠습니다)
-------------------------
아울러 몇가지 질문사항이 있습니다. 아래와 같은 수식이 있을 때
input: N(30),TimeExit(25);
var1=TimeToMinutes(stime)%N;
...
.....
If crossup(var1,TimeExit) Then {
..
....
1) input의 TimeExit(25)를 TimeExit(N-5)로 표현해도 되는지요?
2) var1은 현시간을 N값으로 나눈 "분단위의 나머지 값"으로 받는다는 의미인지요?
3) 만약 var1값이 분단위의 나머지 값이라면
If crossup(var1,TimeExit) 의 수식에서 var1==TimeExit 시점인 30분단위
25분시점에서 (예를들면 10:25 시점) 1초라도 지나면 바로 수식성립이 되는 것이 아니라
26분시점에서 수식성립이 되는 것인지요?
4) 위의 3번 내용이 맞다면, 25분시점에서 1초라도 지나면의 (예를들어 10:25:01시점)
내용으로 하고 싶다면 수식을 어떻게 작성해야하는지요?
5) setstoploss(1,pointstop); 의 수식에서 1pt 손실의 의미는
진입가격(신호가격?) 대비 + 설정창의 수수료 및 슬리피지 포함하여 계산되는 것인지요?
이상입니다.
그럼 오늘도 뜻있는 시간되시고, 즐거운 주말 맞으시기를 바라겠습니다.
감사합니다~
2011-03-25
999
글번호 36919
답변완료
17711번 재 문의입니다~
답변이 없으시기에 새로 적습니다~
답변해 주신대로 식을 구현하면 원하는 매수식이 나오질 않습니다
제가 원하는 매수식은...
If crossup(value1,value2) then Buy("매수", AtLimit, C-PriceScale);
10분봉을 쓴다는 가정하에
위 조건이 만족하는 봉이 10시이면 매수에 들어가는 봉은 10시10분에 조건이 만족하는 10시봉의 종가보다 한틱 아래의 값이 형성되면 매수에 들어가게 됩니다.
그러나 10시10분봉에서 한틱아래의 값이 형성이 되지 않으면 매수없이 그냥 지나치는 경우가 생기게 되기 때문에 한틱아래의 가격이 형성이 되지 않으면 10시10분봉 종가나 10시 20분봉 시가에 바로 매수하기를 바라는 식입니다.
그런데 답변해 주신 식은
----------------------------------------------------------------------
진입식 하나를 더 추가해서 작성하셔야 합니다.
If crossup(value1,value2) then Buy("매수", AtLimit, C-PriceScale);
if crossup(value1[1],value2[1]) and L > C-PriceScale then buy();
즐거운 하루도세요
-----------------------------------------------------------------------
인데...
if crossup(value1[1],value2[1]) and L > C-PriceScale then buy();
를 추가하면
L(10시봉의 저가) > C-PriceScale(10시봉의 종가보다 한틱아래의 값) 면 매수하는 식이 나오게 됩니다.
예를들어...
if crossup(value1[1],value2[1]) and L > C-PriceScale then buy("매수", AtMarket);
라고 하면
10시봉에서 밑꼬리가 없으면 10시10분봉 시가에서 매수에 들어가는 식이 되어 원하는 매수식이 나오질 않습니다.
다시한번 생각해 보시고 헛갈리시더라도 정확한 답을 다시한번 부탁드립니다.
수고하십니다~
2011-03-25
829
글번호 36915
답변완료
5분첯봉
당일5분첯봉만나오게해주세요
첯봉고가 저가 중간값을선으로 해주세요
단첯봉선은 주가에따라 변동하면안되고 게속 시초가에나타난선은종가까지유지하게해주세요 항상감사합니다 수고하세요
2011-03-25
909
글번호 36914
답변완료
시스템식 질문입니다
선물 1계약 으로 매수/매도 진입/청산 시스템 식 입니다
선물차트
data2
data3
매수
C > 선물시가
data2 - data3 > 0
매수청산
data2 - data3 < 0
매도
C < 선물시가
data2 - data3 < 0
매도청산
data2 - data3 <₩> 0
매수 진입횟수 제한 2회 각각
매도 진입횟수 제한 2회 각각
수고하세요
2011-03-25
930
글번호 36913
답변완료
Data1 Vs Data2 지표식 차이?
안녕하세요?
아래의 Aroon 지표식을 일봉에 적용하면 첨부1과 같이 되는데 Data2로 적용하기 위해 수정하면 첨부2와 같이 서로 지표값이 달라집니다. 왜 다르죠? Data2 지표식을 Data1의 지표식과 같은 값이 되게 하려면 어떻게 해야죠?
*** Data1 지표식 ***
Lowval = Lowest(Low, Period+1);
Highval = Highest(High, Period+1);
For counter = 0 To Period {
If Low[counter] == Lowval Then
DownVel = counter;
If High[counter] == highval Then
UpVel = counter;
}
DnAroon = 100*(Period-DownVel)/Period;
UpAroon = 100*(Period-UpVel)/Period;
GapAroon = UpAroon - DnAroon;
Plot1(GapAroon, "Aroon Gap");
*** Data2 지표식 ***
Lowval = Lowest(Data2(Low), Period+1);
Highval = Highest(Data2(High), Period+1);
For counter = 0 To Period {
If Data2(Low[counter]) == Lowval Then
DownVel = counter;
If Data2(High[counter]) == highval Then
UpVel = counter;
}
DnAroon = 100*(Period-DownVel)/Period;
UpAroon = 100*(Period-UpVel)/Period;
GapAroon = UpAroon - DnAroon;
Plot1(GapAroon, "Aroon Gap");
2011-03-25
1320
글번호 36912
답변완료
수식부탁드립니다.
1.1분봉에서 최근 1000개 봉내에서 macd가 최저의 값인 캔들부터 1000개의 캔들내에서 macd값이 가장 큰값까지의 누계합을 그리고 싶습니다. 그리고 입력받은 특정시간캔들에서부터의 누계합도 같이 그리고 싶습니다.
2. 그리고 아래 다다님의 다이버전스식에서 MRO의 기능에 대한 간단한 설명을 부탁드리오며, 본식의 부등호나 H를 L로수정하여 반대방향의 다이버전스로 수정식도 부탁드립니다.
var : value1(0), value2(0), value3(0);
var : sindex1(0), sindex2(0), Lindex1(0), Lindex2(0);
value1 = stochasticsD(12,5,5);
Condition1 = value1 < value1[1] and value1[1] > value1[2];
Condition2 = H < H[1] and H[1] >= H[2];
sindex1 = MRO(Condition1,15,1);
sindex2 = MRO(Condition1,15,2);
Lindex1 = MRO(Condition2,15,1);
Lindex2 = MRO(Condition2,15,2);
if
value1[sindex1+1] < value1[sindex2+1] and
H[Lindex1+1] > H[Lindex2+1] and
Condition1 and
Highest(H,5) == highest(H,15)
then
var1 = 1;
else
var1 = 0;
plot1(var1);
2011-03-25
1024
글번호 36911
답변완료
합성차트에서 두차트 일목 보기
옵션에서 콜옵챠트에 풋옵챠트를 겹쳐서 사용하고 있습니다
이때 콜옵챠트가 데이타1이되고 풋옵션챠트가 데이타2이 되잖아요?
각각 일목을 적용해서 보고 싶은데 데이타1인 콜옵션의 일목은 표기가 되는데
데이타2인 풋옵션의 일목도 표기하고 싶습니다
물론 콜옵션과 풋옵션을 각각 별개의 챠트로 구성해서 볼수도 있지만 두 챠트를
겹친상태에서도 각각의 일목을 보고싶습니다
2011-03-24
963
글번호 36910