커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7737
글번호 230811
답변완료
자동매매 시스템 식 부탁드립니다.
시스템 자동매매에 초보입니다.
다음의 식을 알려주시면 감사하겠습니다.
if 조건식A then
buy();
if 조건식B then
sell();
A 조건(이 조건은 가격으로 정해짐)이 만족될때 선물 매수 1개를 그 가격에 매수 주문이 들어가게하고,
B 조건(이 조건은 가격으로 정해짐)이 만족될때 선물 매도 1개를 그 가격에 매도 주문이 들어가게하고,
(이 조건은 하루에 한번 밖에 발생이 안됩니다.조건식에 포함되어 있습니다.)
포지션이 잡혔을 때(체결되었을 때),
매도건 매수건 이익이 0.7 포인트가 되면, 강제 청산하고, 당일 매매를 종료하고
만약 손실이 0.3 포인트가 되면, 강제 청산하고 당일 매매를 종료하는 식을
부탁을 드립니다.
항상 도움 주셔서 감사합니다.
2011-04-05
803
글번호 37290
답변완료
문의
수고 많습니다..
주식거래(선물,옵션제외)에서 20일 입평선이 전일대비 상승하면 매수하고
전일대비 하락하면 매도하는 시스템 식을 알고 싶습니다...
주식거래에서
매수조건;20입평선이 전일대비 당일 상승시 매수
매도조건;20입평선이 전일대비 당일 하락시 매도..
초보자인 관계로 시스템식이 바로 적용 될 수 있도록 알려주시면
감사하겠습니다...
2011-04-05
695
글번호 37289
답변완료
메시지로그------------
Input : Period(0),maP(0),N(0),Tr1(0),Tr2(0),진입(0),ADXP(0);
Var : value(0);
var2 = adx(adxP);
value = ma(bids,period)-ma(asks,period);
if stime >= 093000 and stime < 144500 and var2 >=10 then
{
if value > value[1]+진입 and ma(C,map) >= ma(C,map)[1]+N Then
buy();
if value < value[1]-진입 and ma(C,map) <= ma(C,map)[1]-N Then
Sell();
SetStopLoss(PriceScale*20,PointStop);
#SetStopProfittarget(PriceScale*5,PointStop);
if MarketPosition == 1 Then{
if Highest(H,BarsSinceEntry) < EntryPrice+3 Then
ExitLong("bx1",AtStop,Highest(H,BarsSinceEntry)-tr1);
Else
ExitLong("bx2",AtStop,Highest(H,BarsSinceEntry)-tr2);
}
if MarketPosition == -1 Then{
if Lowest(L,BarsSinceEntry) > EntryPrice-3 Then
ExitShort("sx1",AtStop,Lowest(L,BarsSinceEntry)+tr1);
Else
ExitShort("sx2",AtStop,Lowest(L,BarsSinceEntry)+tr2);
}
}
//시간청산
var11 = int(date/100)-int(date/10000)*100; //월
var22 = date - int(date/100)*100; //일
var33 = DayOfWeek(date); //요일
if var11%3 == 0 and var22 >= 8 and var22 <= 14 and var33 == 4 then {
SetStopEndofday(144800); //만기날
}
else {
SetStopEndofday(150100); //평일
}
위식에서 var2 와 value 값을 메시지로고로 볼수있게 해주세요 (사용법 간략설명 부탁합니다)
2011-04-05
699
글번호 37288
답변완료
매수식질문입니다.
var:준비(False);
if data2(c)<data2(ma(c,60)) Then
준비=True;
Else
준비=False;
if 준비==true Then
buy("매수",AtStop,data2(Ma(c,60)));
이렇게 매수식을 작성했습니다.
하지만 매수가 나가지않습니다.
data2 란 수식이 잘못된것입니까.
조건식을 data1으로 작성해야만 매수 가 나가는것인지
설명좀 부탁드립니다.
2011-04-05
784
글번호 37287
답변완료
이동평균선간의 가격이 점점 벌어진다는 검색식은 어떻게 되나요?
5이평이 10이평보다 5봉 연속크다.
단,5봉 연속 점점 가격차이가 벌어진다는 검색식은 어떻게 되나요?
2011-04-05
796
글번호 37286
답변완료
질문있습니다.
둘다 보조지표로 5분봉을 사용하구요..
첫번째 그림은 본지표로 1분봉 , 두번째는 5분봉을 사용합니다..
첫번째 그림은 Data2(Dayindex) 값이 9시 5분이 되어야지만 0 으로 셋팅이 되구요..
두번째 그림은 같은 5분지표의 Data2(Dayindex) 이지만 9시에 0 으로 셋팅이 됩니다.
왜 이런 차이가 생기나요..
2011-04-05
797
글번호 37284
답변완료
분석함수
안녕하세요. 빠른 답변에 늘 감사드립니다.
N일전 일간의 시가를 검색하려면 DayOpen(N)으로 표기하듯이
만일 N주전 주간의 시가를 검색하려면 어떻게 표기해야 하는지요?
2011-04-05
806
글번호 37282
답변완료
문의드립니다.
선물 2분봉 기준으로
오늘의 첫봉부터 카운트가 시작됩니다.
전일의 봉은 포함되지 말아야합니다.
9시 28분 봉 포함하여 9시28분봉까지 양봉과 음봉의 갯수를 각기 더하여
양봉이 많으면 9시30분봉에서 매수 신호가 나게되고
음봉이 많으면 9시30분봉에서 매도 신호 발생.
양음봉 숫자가 같으면 9시30분에 신호가 나지않고
다시 9시30분봉에서 9시58분봉까지 양봉과 음봉을 카운트하여
양봉이 많으면 10시에 매수, 음봉이 많으면 10시봉에서 매도신호발생.
양음봉 숫자가 같으면 10시에 신호가 나지않구요.
9시30분과 10시의 신호가 동일하면 그대로 유지되어야합니다.
이런 식으로 30분 단위로 끊어서 정시와 30분 봉에서 신호가 나게 해야합니다.
물론 3시에는 신호가 나지 않아야하구요.
3시봉에는 2시30분에 신호 난놈이 청산되게 해주시구요.
그리고 리버스 시스템입니다.
부탁드립니다.
2011-04-05
786
글번호 37281
답변완료
산식 수정요망
지표산식중 일부 입니다
그림의 붉은선과 같이 GC이후에 신호가 발생시 다음 DC까지 Case07값을 일정하게 유지하려면
어떻게 해야 하는지요?
var : J(0);
var : SD20(0),SK20(0),Case07(0);
SD20 = StochasticsD(20,12,12);
SK20 = StochasticsK(20,12);
Array : SHV20k[5](0),SHI20k[5](0);
Array : SLV20k[5](0),SLI20k[5](0);
var : SHCnt20k(0),SLCnt20k(0);
if Sk20[2]<Sk20[1] and Sk20[1]>Sk20[0] Then {
SHV20k[0] = Sk20[1];
SHI20k[0] = index[1];
For J=1 to 4 {
SHV20k[J] = SHV20k[J-1][1];
SHI20k[J] = SHI20k[J-1][1];
}
}
If Sk20[2]>Sk20[1] and Sk20[1]<Sk20[0] Then {
SLV20k[0] = Sk20[1];
SLI20k[0] = index[1];
For J=1 to 4 {
SLV20k[J] = SLV20k[J-1][1];
SLI20k[J] = SLI20k[J-1][1];
}
}
Case07=0 ;
If SD20[0]>SD20[1] and SK20[2]>SK20[1] and SK20[1]<SK20[0] Then // and crossup(SK20[0],SD20[0])
Case07=10;
//Plot6(Case06);
Plot7(Case07);
2011-04-05
769
글번호 37280