커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8165
글번호 230811
답변완료
함수수정요청(251)
안녕하세요?
함수수정요청드립니다.
아래는 골든크로스매수, 데드크로스매도전략입니다.
여기서 골든크로스시 매수 진입시의 크로스(5ma와 20ma의 교차점)가 직전 교차점보다 아래에 위치 했을 경우에만 진입을 하며
데드크로스시 매도 진입시에는 크로스(5ma와 20ma의 교차점)가 직전 교차점보다 위치 했을 경우에만 진입을 하고자합니다.
input : xtime(60000);
var : tcond(false),cond1(false),cond2(false);
if stime == xtime or (stime > xtime and stime[1] < Xtime) Then{
Tcond = false;
}
if bdate != bdate[1] Then{
Tcond = true;
Condition1 = false;
Condition2 = false;
}
var1 = ma(c,5);
var2 = ma(c,20);
cond1 = C > var1 and var1 > var2;
cond2 = C < var1 and var1 < var2;
if cond1 == true and cond1[1] == false then
Condition1 = true;
if cond2 == true and cond2[1] == false then
Condition2 = true;
if Tcond == true And
Condition1 == true and cond1 == true and
var1 > var1[1] and var2 > var2[1] Then
buy("B");
if Tcond == true And
Condition2 == true and Cond2 == true and
var1 < var1[1] and var2 < var2[1] Then
sell("S");
2016-06-23
252
글번호 99406
답변완료
문의드립니다
48348번 3주중심값 4주중십값 도 나오게부탁드립니다
2016-06-23
256
글번호 99405
답변완료
질문
아래선물식을 바꿔주세요.
선물
매수: Crossup(var1,var2) & bids > asks & 매수물량이 +1000 이상일때
매도: CrossDown(var1,var2) and bids < asks & 매도물량이 +1000 이상일때
input : P1(5),P2(20);
var : XP(0);
var1 = ma(c,P1);
var2 = ma(C,P2);
if MarketPosition <= 0 and crossup(var1,var2) and bids > asks Then
buy();
if MarketPosition >= 0 and CrossDown(var1,var2) and bids < asks Then
sell();
2016-06-23
230
글번호 99403
답변완료
문의드립니다
사진상 키움 수식입니다
이 수식을 예스트레이더 수식으로 변경부탁드립니다
이 수식을 변경하여
SIG선과 Dave 선을 교차하는 지점에서 매수 매도 신호 부탁드리겠습니다
1. Dave 선이 SIG 선을 뚫고 올라갈경우 매수신호 발생
Dave 선이 SIG 선을 뚫고 내려갈경우 매도신호 발생
2. 위 1번 수식에서 아침9시에 신호발생 오후3시에 강제청산 발생
1.9시에 SIG선 위에 dave 선이 올라탔을경우 매수신호
2.9시에 SIG선 위에 dave 선이 있을경우 매수신호
3시에 강제청산~
위 1.2 번 둘다 됬을경우 매수신호 반대로 는 매도신호
3. 위 1번 수식에서 아침 10시 30분에 신호발생 오후 3시에 강제청산 발생
1. 10시 30분에 SIG 선 위에 dave 선이 있을경우 매수신호발생
2. 10시 30분에 SIG 선 밑에 dave 선이 있을경우 매도신호발생
3시에 강제청산~
외부수정 가능하게좀 부탁드리겟습니;다
2016-06-22
331
글번호 99402
답변완료
문의드립니다
기본수식인
MACD Oscillator 로 수식을 하나만들어보고싶습니다
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");
위 수식에서 다름이아니라
1. Plot1 번만 즉 (막대 표만 ) 따로 하나 수식부탁드리겠습니다
MACDOScillator+ 와 MACDOScilator- 만 나오도록~
변수는 지정할수있게 부탁드리겠습니다
2. 위 1번 에서 MACDOScillator+ 와 MACDOScilator- 나오는 부분에서만 따로 하나
시스템 부탁드리겠습니다
2번 조건 시스템
1. 0선 을 기준으로합니다
매수 조건 : 0선 밑에있는 음봉 에서 현제봉이 앞전 봉2개 보다 낮을경우 매수 신호발생
매도 조건 : 0선 위에있는 양봉 에서 현제봉이 앞전 봉2개 보다 높을경우 매도 신호발생
0선 기준으로 하여 위 시스템신호에서 재 매수 매도 신호는 없도록 해주세요
매수조건으로 하여 매수신호가 발생하였는데 혹시
봉2개 보다 낮을경우 매수 신호인데 다시 현제봉이 봉2개를 넘어설경우 :재매수 신호 X
봉2개 보다 높을경우 매도 신호인데 다시 현제봉이 봉2개를 넘어설경우 :재매도 신호 X
무조건 신호는 단한번만 부탁드리겠습니다~
외부변수 수정가능하게좀 부탁드리겠습니다
2016-06-22
268
글번호 99401
답변완료
검색식에서
혹시, 검색과 매매 동시에 할 수가 있나요 ? 예를들면 골든크로스나는종목검색식 만들어두고 자동으로 각 종목마다 진입할 수 있도록... 가능한지 궁금합니다.
2016-06-22
245
글번호 99400
답변완료
시스템 문의
안녕하세요
하기 이평선 매매 수식에 한가지 더 추가 하고 싶은게 있습니다.
- 하기 이평선 매매를 진행하는 중에
손절매를 당하는 순간 바로 역매매를 들어가는 수식부탁드립니다.
(이평선 매매와 별개로 손절 당하는 순간에만 적용되는 수식으로 부탁드립니다.
그외에는 이평선 매매를 따릅니다.)
조건은 하기와 같습니다.
* 10틱을 달성하면 청산 부탁드립니다.
* 10을 달성하지 못하면 다음봉 종가에서 청산하고 나옵니다.
* 손절은 5틱으로 합니다.
- 하기 조건식에서 옵션으로 현재봉 종가보다 시세가 높거나 낮으면 매수 매도 재진입인데,
이것을 청산가격으로 바꾸어 주실 수 있으신지요?
또는 전봉의 종가가격으로 바꾸어 주실 수 있으신지요?
현재봉에서 일차적인으로 청산이 이루어지면 다음봉에서 같은 가격을 만나면,
다시 청산 가격 또는 종가가격으로 재매도 재매수 들어갈 수 있는 수식 부탁드립니다.
사실 추세를 타면 쭉 이어가고 싶은데...중간에 프로그램이 손절매와 최고가격대비 하락
기능으로 자꾸 끊겨서...제대로 수익을 내지 못하고 있습니다...
이것을 개선하고 싶습니다..
- 그리고 시뮬레이션을 돌려보면 최초 진입이 거의 봉완성 마지막에 진입을 하고 있습니다.
봉 중간에 분명이 이평선 매매의 조건을 충족하고 있는 것 같은데, 항상 봉 마지막에
진입을 해서 수익이 많이 나지 않고 있습니다.
이게 프로그램과 무슨 연관이 있는 것인지요? 확인 부탁드립니다.
감사합니다.
input : short(5),mid(20),long(60);
var1 = ma(c,short);
var2 = ma(c,mid);
var3 = ma(c,long);
Condition1 = var1 > var2 and var2 > var3;#정배열이면 true 아니면 false
Condition2 = var1 < var2 and var2 < var3;#역배열이면 true 아니면 false
#정배열이 아니었다가 정배열이 되면 매수진입
if Condition1 == true and Condition1[1] == false Then
buy();
#역배열이 아니었다가 역배열이 되면 매도진입
if Condition2 == true and Condition2[1] == false Then
sell();
#현재 무포지션이고 직전 청산이 bx1이고 현재봉 종가보다 높은 시세가 다음봉에 발생하면 재매수
if MarketPosition == 0 and IsExitName("bx1",1) == true Then
buy("재매수",AtStop,C+PriceScale);
#현재 무포지션이고 직전 청산이 sx1이고 현재봉 종가보다 낮은 시세가 다음봉에 발생하면 재매도
if MarketPosition == 0 and IsExitName("sx1",1) == true Then
sell("재매도",AtStop,C-PriceScale);
2016-06-23
256
글번호 99399
softtoug 님에 의해서 삭제되었습니다.
2016-06-22
1
글번호 99398
답변완료
해외선물 시가의 분봉과 틱봉의 차이
분봉이나 틱봉에 동한 시가식을 적용했음에도 불구하고
시가가 다르게 나타납니다.
시가의 식은
시가 = data1(DayOpen);
로 하였습니다.
일봉의 시가와 분봉, 틱봉 등 모두 동일하게 나오게 할 방법이 없는지요?
2016-06-22
255
글번호 99397