커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7294
글번호 230811
답변완료
문의드립니다.
안녕하세요. 수고 많으십니다.
* 손절라인을 "진입봉" "직전봉"의 저가로 설정하려고 합니다. 관련함수 부탁드립니다.
ex> 26일 매수했다면 25일 저가를 손절로 설정
그럼 수고하세요~
2017-10-26
177
글번호 113664
답변완료
macd
macd 지표에서 macd 가 macdsignal 를 데드크로스 하고
macd 가 macdsignal을 터치만 하고 (리테스팅)/조금이라도 골드가 나오면 안되겠죠
macd 하고 macdsignal에 이격이 생기면 참
신호가 생기게끔 해주세요
반대로 골든 크로스도 해주세요
Input : shortPeriod(12), longPeriod(26), Period(9);
Var : MACDv(0), MACDsig(0),macdosc(0) ;
MACDv = MACD(shortPeriod, longPeriod);
MACDsig = ema(MACDv,Period);
macdosc = MACDv-ema(MACDv,Period);
if macdosc > 0 then
{
plot1(macdosc, "MACDOscillator+");
Plot2(0, "MACDOscillator-");
}
else
{
Plot1(0, "MACDOscillator+");
Plot2(macdosc, "MACDOscillator-");
}
Plot3(MACDv, "MACD");
Plot4(MACDsig, "MACDSignal");
PlotBaseLine1(0, "기준선1");
2017-10-26
193
글번호 113662
답변완료
함수요청
안녕하세요?
함수 요청드립니다.
해외선물, Crude Oil 60분봉에 적용하고자 합니다.
전일 종가가 60달러 이상에서는
현재가가 20ma 상향돌파 후 0.5달러 이상 추가 상승시 완성봉 시가 매수진입
현재가가 20ma 하향돌파 후 0.5달러 이상 추가 하락시 완성봉 시가 매도진입
전일 종가가 60달러 미만에서는
5ma, 20ma 골든크로스 완성 익봉 시가 매수진입
5ma, 20ma 데드크로스 완성 익봉 시가 매도진입
2017-10-26
187
글번호 113661
답변완료
추가매수
안녕하세요~
하락시 매수하는 시스템인데
투자금이 1억원 이라고 했을때
[매수A]
1.조건a를 이탈시 첫 매수를 투자금의 0.1% 매수
2.1% 추가 하락시 투자금의 0.2%
3.2% 추가 하락시 투자금의 0.3%
4.3% 추가 하락시 투자금의 0.4%
5.4% 추가 하락시 투자금의 0.5%
6.5% 추가 하락시 투자금의 0.6% 를 매수 합니다
★하락시 순차적으로 매수되게 하고 싶습니다 .
★만약 갭하락으로 1~6 번까지 조건이 중복으로 만족되는경우 최저가에서 한번만 매수 되게 하고싶습니다.
[매도A]
1.평단가대비 5%상승시 매수금의 20% 매도
2.평단가대비 8%상승시 매수금의 50% 매도
3.평단가대비 10%상승시 매수금의 80% 매도
4.평단가대비 15%상승시 매수금의 100% 매도
★100% 청산시 매수금지
★5% 상승 매도 후 하락하는경우는 이전에 매수된 [매수A]조건 보다 하락시 순차적 추가 매수
(예: 2%하락 까지 추가매수되어 평단가대비 5% 상승 매도 후 하락하는 경우는
매수4번 부터 매수되어야 한다)
★8% 상승 매도 후 하락하는 경우는 매도된 가격을 기준으로 아래처럼 순차적 하락 추가 매수
[매수B]
1. 3% 하락시 투자금의 0.1%
2. 4% 추가 하락시 투자금의 0.2%
3. 5% 추가 하락시 투자금의 0.3%
4. 6% 추가 하락시 투자금의 0.4%
5. 7% 추가 하락시 투자금의 0.5% 를 매수 합니다
★10% 상승 매도 후 하락하는 경우는 매도된 가격을 기준으로 아래처럼 순차적 하락 추가 매수
[매수C]
1. 5% 하락시 투자금의 0.1%
2. 6% 추가 하락시 투자금의 0.2%
3. 7% 추가 하락시 투자금의 0.3%
4. 8% 추가 하락시 투자금의 0.4%
5. 9% 추가 하락시 투자금의 0.5% 를 매수 합니다
평단가대비 15%상승하여 매수금이 100% 청산될때까지 위 루팅을 반복합니다.
감사합니다.
2017-10-27
189
글번호 113656
답변완료
질문드립니다.
if 매매조건 then 이후
a라는 조건이면 매매중단, a조건이후 b조건이 만족하면 다시 매매시작. 수식으로 나타낼려면 어떻게 해야할까요?
2017-10-26
176
글번호 113652
답변완료
청산 수식 문의
이미지 처럼 매도 주문이후 장대 양봉이 나오면서 손절이 나는 경우가 있는데, 이때 매도진입이후 수익이 확보될때 손절라인을 조절해서 이익을 확보할 수 있나요?
예를 들어 '캔들생성 도중이라도 이익이 10틱이상이 될때 손절라인을 5틱으로 잡는다(5틱이익 확보)' 수식표현이 가능할까요?
참고로 시그널 메이커에서는
SetStopTrailing( Maxcontractprofit - TickSize * 5, TickSize * 10, pointstop);
명령이 가능하더군요. 예스에서도 가능할까요?
이전캔들의 최고가를 참고하는 방식이 아니라 현재캔들(봉생성 도중) 내에서 조건에 닿으면 청산할 수 있는가 하는 거죠.
2017-10-26
205
글번호 113648
답변완료
이것 저것 문의드립니다.
도움주시는 덕분에 도전하고 있습니다. 언제 우상향 그래프만드나 싶기도 하지만 파이썬 배울 때보다는 진도가 빠르네요. 매번 감사합니다.
1. 시스템
비고: 기준은 일봉으로 매매는 30분봉으로
var1 = 주첫째날부터 셋째날까지의 고가
진입
-주넷째날의 고가가 var1을 상향돌파하면
1차진입, 수량 100(변수)
-1차진입가격으로부터 3%이상 가격이 바뀌면(-3%이상 떨어지거나 +3% 이상 오르거나) 2차 진입, 수량 100(변수)
-2차진입가격으로부터 3%이상 가격이 바뀌면 3차진입, 수량 100(변수)
주마지막날 모두 청산.
2. 시스템
변수: 설정가, 금액a, 금액b, 금액c, n%
1차진입
-설정가에서 금액a만큼 즉시 진입(상향돌파, 하향돌파, =)
2차진입
1차진입가에서 n% 이상 하락했을 때 그 가격에서 금액b만큼 2차진입
1차진입가에서 n% 이상 상승했을 때 그 가격에서 금액d만큼 2차진입
3차진입
2차진입가에서 n% 이상 하락했을 때 그 가격에서 금액 c만큼 3차진입
2차진입가에서 n% 이상 상승했을 때 그 가격에서 금액 e만큼 3차진입
청산
-3차진입이후 포지션이 6%의 수익률을 기록하거나
-3차진입이후 포지션의 손실률이 3%를 기록하면 모두 청산
3. 시스템
진입
종가가 20개봉 고가 돌파
청산
-저점이 n개봉 이전 최저점(5봉 이전 봉의 20봉내 최저점)을 3%이상 하회하거나.
-10봉이내에 저점이 높아지지 않으면 청산
4. 시스템
진입
-40개봉 최고가 돌파
-10개봉 이내에 돌파시점가격에서 가격이 n% 이상 떨어지지 않았거나
-10개봉 이내에 돌파시점 가격대비 b% 이상 올랐으면 진입
청산
-진입 후 가격이 고가대비 n%이상 떨어지는 순간 청산
5. 시스템
변수: 설정자금, 투입자금(설정자금을 타임프레임 기준로 나눈 것)
30분봉 시가마다 투입자금 진입(30분봉이면 장종료까지의 봉갯수(13개로 나눔)로 설정자금을 나눈 금액이 투입자금)
청산
당일 오후 3시 15분이 되면 일괄청산
손실금액이 설정자금의 2%에 도달하는 순간 더이상 진입하지 않음.
비고
봉갯수 계산이 어려운 수식이면 그냥 외부변수로 설정해주셔도 됩니다.
2017-10-26
226
글번호 113642
답변완료
질문입니다.
지표를 작성하고자 합니다.
X값이 있습니다.
만약 X값을 3이라고 가정해본다면,
1. 종가와 Ma1값을 비교해 종가가 크거나 같으면 1, 아니면 -1
2. 종가와 Ma2값을 비교해 종가가 크거나 같으면 1, 아니면 -1
3. 종가와 Ma3값을 비교해 종가가 크거나 같으면 1, 아니면 -1
4. Ma1값과 Ma2값을 비교해 Ma1값이 크거나 같으면 1, 아니면 -1
5. Ma1값과 Ma3값을 비교해 Ma1값이 크거나 같으면 1, 아니면 -1
6. Ma2값과 Ma3값을 비교해 Ma2값이 크거나 같으면 1, 아니면 -1
7. 1~6값의 합을 표시
위의 순서에 따르는 지표를 만들고 싶습니다.
여기서 X값을 조절할 수 있게 만들고 싶습니다.
수식으로 부탁드립니다.
감사합니다.
2017-10-26
177
글번호 113641
답변완료
트레이딩 시작시간 변경
아래 수식에 트레이딩 시작 시간을 조절하고 싶습니다.
input에서 시간을 입력하면
090000부터 계산은 초기화하고
입력한 시간부터 장시작으로 인식하는 수식으로 변경 바랍니다.
고맙습니다.
**********************
input : HighLine(300.50),LowLine(300.00),n(3);
var : HH(0),LL(0),gap(0),T(0),T1(0),Entry(0);
gap = HighLine-LowLine;
if Bdate != Bdate[1] Then{
T = 0;
T1 = TotalTrades;
if O > highLine Then{
var1 = Ceiling(abs(O-HighLine)/Gap);
HH = HighLine+gap*var1;
LL = HH-gap;
}
else{
var1 = Floor(abs(O-HighLine)/Gap);
HH = HighLine-gap*var1;
LL = HH-gap;
}
}
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = TotalTrades-T1+1;
if T == 0 and crossup(C,HH) Then{
T = 1;
var2 = HH;
HH = var2+gap;
LL = var2-Gap;
}
if T == 0 and CrossDown(C,LL) Then{
T = -1;
var2= LL;
HH = var2+Gap;
LL = var2-Gap;
}
if T != 0 and crossup(C,HH) Then{
T = 1;
var2 = HH;
LL = var2-Gap;
HH = var2+gap;
if entry < n then
buy();
}
if T != 0 and CrossDown(C,LL) Then{
T = -1;
var2 = LL;
HH = var2+Gap;
LL = var2-Gap;
if entry < n then
sell();
}
2017-10-26
184
글번호 113640