커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7569
글번호 230811
답변완료
재진입
오실레이터 매매 에서
변곡에서 팔았다가 다시
상승하면 재진입을 하려 하는데
식에 의도한대로 되지 않네요
원하는 식은
만약 오실레이터에서 수치가 0 이상이면
매수 진입한후 전수치보다 작으면 매수 청산 했다가
가격이 청산 가격보다 다시 커지면 재매수후 오실레이터 값이
작아지면 매도 하려 합니다
Input : period(30), sigPeriod(30);
Var : value(0), sig(0),osc(0) ;
value = ema(bids,period)-ema(asks,period);
sig = ema(value,sigPeriod);
osc = value-sig;
var1 = round(osc,2);
if crossup(var1,0) Then
buy("b");
if MarketPosition == 1 and IsEntryName("b") Then{
if var1[2]< var1[1] and var1 < var1[1] Then
exitlong("bx");
if c> exitprice Then
buy("bs",AtStop,c,1);
}
if MarketPosition == 1 and IsEntryName("bs") and
var1[2]< var1[1] and var1 > var1[1] then
ExitShort("bxs");
if CrossDown(var1,0) Then
sell("s");
if MarketPosition == -1 and IsEntryName("s") Then{
if var1[2]< var1[1] and var1 > var1[1] Then
ExitShort("sx");
if C< ExitPrice Then
sell("sb",atstop,c,1);
}
if MarketPosition == -1 and IsEntryName("sb") and
var1[2]< var1[1] and var1 < var1[1] then
ExitLong("sbx",atstop ,c,"",1,1);
2013-04-19
229
글번호 62260
답변완료
손절값을 계속 변경하기 그리고 갭 발생시 주문하기
1.
진입후 어떤 조건에 의해서 손절값을 구하고 이것을 최초의 손절값으로 정해놓습니다.
다음에 어떤 조건이 발생하면 이것을 최초 손절값과 비교해서
어떤 조건 범위내에서 있으면 이것을 수정하게 하려고 합니다.
코스피 선물을 예로 들자면 247.80에서 매도 진입했고 최초 손절값이 248.10 이라고 할때
다음에 어떤 조건을 만족하면 247.90으로 손절을 옮기는 방식으로 하려 합니다.
물론 그 다음에도 조건 만족하면 손절을 계속 땡겨주는 방식이구요.
2. 그리고 봉간에 갭 발생시 진입하는 수식 작성하려는데요.
직접 해보니 잘 안되서 문의드립니다.
봉의 종가에서 + 방향으로 발생하면 현재가로 진입하고 종가에 청산하고
종가에서 - 방향이면 현재가 진입후 종가 청산하기
2013-04-19
358
글번호 62257
답변완료
수식 문의드립니다.(시스템식 과 지표식)
수고하십니다.
두 가지를 여쭈겠습니다.
1. 분봉그래프에서
1일전 시가가 2일전시가보다 크고
오늘 중간값이 1일전중간값보다 크고
분봉에서 현재봉의 저가가 1일전중간값보다 작거나 같을 때 [매수]
1P이상 이익이면서 현재분봉의 고가가 오늘의 고가를 갱신하거나
0.5P이상 손실이면서 현재분봉의 저가가 어제저가와 같거나 작을 때 [청산]
2. 분봉그래프에서
당일첫번째봉의 고가, 저가, 중간값, 고가+1,고가+2, 고가+3, 저가-1, 저가-2,
저가-3을 그래프 위에 보조지표로 그리고 싶습니다.
부탁드려요.
2013-04-19
262
글번호 62256
답변완료
수식문의드립니다.
<매수1> 조건 a일때 {
조건1 일때 매수 1-1
조건2 일때 매수 1-2
조건3 일때 매수 1-3
조건4 일때 매수 1-4
. }
.
.
<매수2> 조건 b일때 {
조건5 일때 매수 2-1
조건6 일때 매수 2-2
조건7 일때 매수 2-3
. }
.
.
.
<청산>
매수1/매수2 동일 적용
===== 위와같이 수식을 작성하고자 할때 아래와 같이 만들어주세요 ======
●매수1은 조건 만족하면 계속 매수청산을 반복 합니다
●매수2는 매수1에서 매수 또는 청산을 하였을경우만 발동 해야합니다
(매수1 매수유지 or 매수1 매수후 청산된경우에도)
●매수2까지 매수되어 청산후 재매수시에는 다시 매수2 조건을 만족하더라도
새롭게 매수1에서 매수 또는 청산이 이루어진 경우에만 재매수가 이루어져야 합니다
그렇지 않은경우 매수중지합니다
●매수 1 조건만족시는 매수를 4번만 해야합니다
●매수 2 조건만족시는 매수를 3번만 해야합니다
ㅡ> 매수1의 매수횟수와 상관없이 매수2에서는 3번 매수되어야 합니다
예로 매수1에서 2번 매수된상태로 청산없이 매수2 조건 발동될수도 있으므로,,,
2013-04-19
228
글번호 62253
관리자에 의해서 삭제되었습니다.
2013-04-19
7
글번호 62248
답변완료
안녕하세요RSI신호
안녕하세요.반갑습니다
세가지 를 문의 합니다
1)RSI 가 Signal 상향돌파시 매수신호.하향돌파시 매도 신호
2)RSI 가 기준선 위에서 시그널 상향돌파시 매수
RSI 가 기준선 아래에서 시그널 하향돌파시 매도
3)RSI 가 기준선(50) 상향돌파시 매수 신호
RSI 가 기준선(50) 하향돌파시 매도신호
항상고맙고 감사합니다
2017-08-27
257
글번호 62244
답변완료
문의 드립니다.
수고 많으십니다.
전 26개봉중 최저가가 해당봉의 Ma60 보다 높다를 식으로 만들려면..
L(c,26) > ?? 인데 부탁드립니다.
2013-04-19
189
글번호 62243
답변완료
다시 수식올립니다 수정좀---
보내준 수식을 이용해서 혼자 만들어 볼려고 했으나
신호가 뜨질 않아서 도움을 다시 요청합니다. 이제 배우니 너무 힘듭니다.
청산식도 가능하면 부탁드릴께요. 주석달아주시면 공부에 도움이 될것같습니다.
정말 고맙습니다.
#보내준수식
if date != date[1] Then{
Condition1 = false;
var1 = 0;
var2 = 0;
}
if Condition1 == false and A조건 Then{
Condition1 = true;
var1 = 0;
}
if Condition1 == true then{
if C > O and C[1] < O[1] and V > V[1] Then{
var1 = var1+1;
if var1 == 3 Then
buy();
}
if C < O and C[1] > O[1] and V > V[1] Then{
var2 = var2+1;
if var2 == 3 Then
Sell();
}
}
##만들어본수식
var : 양음 (False),음양 (False),참고1(False), 참고2(False);
if date != date[1] Then{
Condition1 = false;
var1 = 0;
var2 = 0;
양음 = C > O and C[1] < O[1] and V > V[1];
음양 = C < O and C[1] > O[1] and V > V[1];
참고1 = data2 (C) > data2(O) and data2 (C[1]) <data2 (O[1]);
참고2 = data2 (C) < data2(O) and data2 (C[1]) >data2 (O[1]);
}
if Condition1 == false and data2(C)>0 Then{
Condition1 = true;
var1 = 0;
}
if Condition1 == true then{
if 양음 and 참고1 Then{
var1 = var1+1;
if var1 == 3 Then
buy("BA");
}
if 음양 and 참고2 Then{
var2 = var2+1;
if var2 == 3 Then
Sell("SA");
}
}
##만들고 싶은 수식은
##장시작후 첫봉은 무조건 제외시키고 싶어요
#매수
1. A조건을 data2 외국인선물매수로 설정하고 0 보다 클때와 0보다 작을때 2가지 매수조건.
2. data2 의 봉을 선물차트 분봉거래량의 매수조건과 같이 한쌍(음봉 다음 양봉)으로 한다.
장시작후 분봉차트와 data2를 동시에 카운트하여 음봉보다 큰 양봉거래량이3번 나오면 매수,
한쌍의 거래량에서 음봉거래량은 1000개이상이고 양봉도 1000개이상이어야 조건만족
3. data2 거래량봉 역시 같은시간에 분봉차트와 똑같은 모양(색깔,음봉다음 양봉)이 나와야 3번의 카운트가 유효하다.
data2의 거래량은 무시한다.양봉음봉만 판단.
//분봉이나 data2 챠트에서 도지형태의 모양은 카운트에서 무조건제외//
#매도(매수 반대내용)
1. A조건을 data2 외국인선물매수로 설정하고 0 보다 클때와 0보다 작을때 2가지 매도조건 .
2. data2 의 봉을 선물차트 분봉거래량의 매수조건과 같이 한쌍(양봉 다음 음봉)으로 한다.
장시작후 분봉차트와 data2를 동시에 카운트하여 양봉보다 큰 음봉거래량이3번 나오면 매도진입,
한쌍의 거래량에서 음봉거래량은 1000개이상이고 양봉도 1000개이상이어야 조건만족
3. data2 거래량봉 역시 같은시간에 분봉차트와 똑같은 모양(색깔,음봉다음 양봉)이 나와야 3번의 카운트가 유효하다.
data2의 거래량은 무시한다. 양봉음봉만 판단
//분봉이나 data2 챠트에서 도지형태의 모양은 카운트에서 무조건제외//
# 매수나 매도진입후 청산
1.조건을 만족한 3번째 카운트와 동시 진입후 매수든 매도든 카운터는 모두 0상태가 되고,
다시 3번의 진입반대 카운터만 하고 청산후 반대로 재진입
오후 3시에 강제청산
# 매수조건 카운트와 매도조건 카운트 횟수는 임의로 조정가능할 수 있을까요
2013-04-19
288
글번호 62242
답변완료
추가매수조건
항상 감사드립니다.
매수조건에 피라미딩(?) ~ 추가매수조건을 넣고 싶습니다.
if 매수조건1 then{
if 매수조건2 then{
buy("b1")
}
}
if MarketPosition == 1 Then{
if 매도조건1 Then
exitlong("EL1");
if 매도조건2 Then
exitlong("EL2");
if 매도조건3 Then
exitlong("EL3");
}
위와 같은 매수식이 있을때
첫번째 b1이 매수진입되어 포지션이 유지되고 있을 때 매수조건3을 만족하면 b2 라는 추가매수를 하고 싶습니다.
두번째 b1매수되어 EL1 또는 EL2 또는 EL3 매도청산 될때 청산시점부터 N봉 이내가 되면 매수조건4를 만족하면 b3이라는 추가매수를 하고 싶습니다.
감사드립니다.
2013-04-19
213
글번호 62241