커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8208
글번호 230811
udud 님에 의해서 삭제되었습니다.
2013-11-15
15
글번호 69505
답변완료
시스템식 질문드립니다.
시스템 질문드립니다.
제가 질문을 잘 못드려도 항상 좋은 답변을 해주셔서 너무 감사드립니다.
>드리구 싶은 질문은
그림1은 원익ips의 2013년 11월12일~11월14일까지 5분봉을 참고로 질문드립니다.
60분봉이나 30분봉이 아닌 꼭 5분봉에서 엔벨로프를 간단하게 period 20 Percent 1.2정도로 정하고
저 그림대로 11월12일부터 매수를 시작해서 11월14일까지 5분봉 엔벨 period 20 Percent 1.2하단 지지선에 올때마다 계속 5분할로 매수하는 시스템을 만들고 싶습니다.
전에도 몇번 부분적으로 질문을 드렸습니다만..
중복으로 매매되는 코드 부분과 분할매수 하는 코드부분을 섞어서 나름 만들어보았습니다만..
제 생각대로 되지 않는 애로사항이 11월 13일을 기준으로 보면
=>>예스스탁님이 11월8일날 답변해주신 (Date로 날짜를 지정한 날에 오전에 벌써 매수하고 싶은 가격을 내렷다가 올라가도 오후에 다시
매수할수 있는 시스템을 만들구 싶다구 문의드릴때)
"혹은 피라미딩을 설정하셔서
매수신호가 연속적으로 나오게 하시는 방법도 있습니다.
해당 수식을 거실때
시스템 트레이딩 설정창의 피라미딩탭에서
피라미딩을 모든신호허용으로 설정하고 적용하시면 됩니다.
다만 해당식이 종가가 4900보다 낮으면 조건이 계속 만족하므로
아래와 같이 하향이탈하는 것으로 변경해서 작성해 주셔야 합니다.
종가가 지정된 값보다 위에 있다가 아래로 내려오는 경우에
계속 매수가 됩니다.
var:매매일(20131107);
if 매매일 == Date and MarketPosition ==0 and CrossDown(C,4900) then
buy();
" 이렇게 말씀해주셨는데
제가 엔벨라인에 대입해보려고
==]]
이십분선 = ma(c,20);
엔벨지지선 = 이십분선 + int( 이십분선 * -0.012); //엔벨 Period 20 Percent 1.2를 이런식으로 해보았습니다.
if 매매일 == Date and CrossDown(C,엔벨지지선) then
{
buy("b1",Atlimit,엔벨지지선,매수수량);
buy("b2",Atlimit,엔벨지지선-PriceScale*1,매수수량);
buy("b3",Atlimit,엔벨지지선-PriceScale*2,매수수량);
buy("b4",Atlimit,엔벨지지선-PriceScale*3,매수수량);
buy("b5",Atlimit,엔벨지지선-PriceScale*4,매수수량);
}
==]] 이렇게 작성해 보았는데
전에 한번 설명들은거 같은데 분봉이 완성이 되어야 매수가 되기 때문에 그림의 B지점은 분할매수가 되지만(분할매수가 되도 높은 가격으로 매수가 되네여) C지점은 분봉저점이 지지라인에 닿았어도 매수가 되지 않는거 같습니다.(5번 분할매수하는 이유는 엔벨을 꼭 찍지 않거나 엔벨 밑으로 빠지거나 하는 경우가 많아서 분할매수 하기위해서입니다. )
꼭 5분봉에서의 엔벨로프를 쓰고 싶습니다만.. 어떤 방법이 없을까요..
그리고 날짜를 시작날짜11월12일부터 종료날짜 11월14일로 정하면 11월12일 A지점 11월13일 B지점 C지점 11월14일 D지점에 계속 매수가
되게 할려면 어떻게 하면 좋을지 모르겠습니다.
(점선 엔벨지지라인은 지표에서 plot으로 엔벨지지선을 그린겁니다.)
------------------------------------
그림 2는 전에 설명해주신 방법을 짜깁기 해서 분봉가격대에서
==]]
엔벨지지선 = 이십분선 + int( 이십분선 * -0.009); //엔벨 Period 20 Percent 1.2 지지라인 보다 조금 위에서 잡히게 0.009로 해보았습니다.
count =0;
for cnt = 0 to 20 {
if sdate == EntryDate(cnt) Then
count =count + 1;
}
if stime == 150000 and MarketPosition <20 and sdate == 전일 then { //stime은 왜썼는지 기억은 안나네여..
buy("b1",Atlimit,엔벨지지선,매수수량);
buy("b2",Atlimit,엔벨지지선-PriceScale*1,매수수량);
buy("b3",Atlimit,엔벨지지선-PriceScale*2,매수수량);
buy("b4",Atlimit,엔벨지지선-PriceScale*3,매수수량);
buy("b5",Atlimit,엔벨지지선-PriceScale*4,매수수량);
}
==]]
요렇게 해서 해보면 그림 B처럼 분봉의 밑에 저가부분근처에서 매수가 들어갑니다만, 대신 B ,C지점에 다시 내려왔을때 매수가 중복매
수가 안되고 crossdown으로 해보면 그림 A의 11월 13일의 C부분이 잡히지 않는 문제가 생깁니다.
두서없이 질문드려 죄송합니다. 질문의 요지는 어느 기간을 정하거나 어느 날짜를 정해서 시스템을 걸으면 엔벨 지지라인에서 분할매수가 하루에 몇번이고 지지라인만 오면 중복으로 되게 하는 시스템을 만들어보고 싶습니다. 잘 부탁드립니다.
2013-11-15
243
글번호 69504
답변완료
해외선물 이익폭설정
항상 감사드립니다
해외선물(크르드오일)에서 이익폭을 확정하고 싶습니다
아래식을 적용해보니 시스템에 제대로 나오질 않습니다
수정부탁드립니다
** 해외선물에서 20틱 수익발생시 청산 및 신호발생금지 ***
#########################
##### 당일익절 설정 #####
#########################
input : 당일손익(20);
var : NP(0),PreNP(0),dayPL(0),DollerToTick(0);
NP = NetProfit;
if stime == 080000 or (stime > 003000 and stime[1] < 003000) then
PreNP = NP[1];
#당일 손익(포인트)
DayPL = NetProfit-PreNP ;
###########################
##### 매수/매도 조건식 ####
###########################
if (stime >= 080000 or stime < 02000) and (DayPL < 당일손익*PriceScale) Then{
매수조건
매도조건
}
2013-11-14
205
글번호 69503
답변완료
수식문의
TSF 20,30,50일 기준으로 엑셀에 표현해보고 싶은데
쉽게 풀어서 수식좀 알려주시면 감사하겠습니다.
2013-11-14
185
글번호 69502
답변완료
문의
[기존수식]
input : BBP(20),dv(2);
var : BBup(0),BBdn(0)
BBup = BollBandUp(BBP,dv);
BBdn = BollBandDown(BBp,Dv);
if C > O and C <= BBdn Then
var1 = 1;
if MarketPosition == 0 or C <= BBdn Then{
var1 = 2;
Buy("매수");
}
if C < O and BBUp>= C Then
var1 = -1;
if MarketPosition == 0 or C >= BBup Then{
var1 = -2;
sell("매도");
}
위 수식에서 매수 진입후 음봉이 연속으로 3번나올때 마지막 음봉에서 청산
매도 진입후 양봉이 연속으로 3번 나올때 마지막 양봉에서 청산
그럼 수고하세요
2013-11-14
183
글번호 69501
답변완료
문의 드립니다.
안녕하십니까!
빠른 답변 감사합니다.
아래의 수식에서 옵션만기일 장마감 동시호가의
upvol과 downvol의 거래량을 제외하여 산출하고자 합니다.
감사합니다.
안녕하세요
예스스탁입니다.
시간을 10분 간격으로 나눠 합산하시는 경우에는 아래식 이용하시면 됩니다.
var : cnt(0),sum1(0),sum2(0);
var1 = TimeToMinutes(stime)%10;
if dayindex == 0 or (dayindex > 0 and var1 < var1[1]) Then{
sum1 = 0;
sum2 = 0;
}
sum1 = sum1+Upvol;
sum2 = sum2+DownVol;
plot1(sum1);
plot2(sum2);
즐거운 하루되세요
> 아틀라스 님이 쓴 글입니다.
> 제목 : 문의 드립니다.
> 안녕하십니까!
var1 = 매 10분동안의 upvol 거래량의 누적합;
var2 = 매 10분동안의 downvol 거래량의 누적합;
plot1(var1);
plot2(var2);
상기와 같이 하고자 합니다.
감사합니다.
2013-11-14
191
글번호 69500
답변완료
문의드립니다
안녕하세요^^
아래 기존수식에서
전봉이 검색의 N일 연속상승의 조건에 해당될경우
다음봉이 매수신호발생시 매수진입이 안되도록 수정바랍니다.
매수시만 적용해 주시면 됩니다.
[기존수식]
input : BBP(20),dv(2);
var : BBup(0),BBdn(0)
BBup = BollBandUp(BBP,dv);
BBdn = BollBandDown(BBp,Dv);
if C > O and C <= BBdn Then
var1 = 1;
if MarketPosition == 0 or C <= BBdn Then{
var1 = 2;
Buy("매수");
}
if C < O and BBUp>= C Then
var1 = -1;
if MarketPosition == 0 or C >= BBup Then{
var1 = -2;
sell("매도");
}
2013-11-14
164
글번호 69499
답변완료
최고가
안녕하세요
최고가대비 1%. 하락하면. 매도
최저가 대비. 1%. 상승하면. 매수
감사^^
2013-11-14
193
글번호 69496
답변완료
33425 아래글 답변
1차 2차 기준선 라인이 안보이는데 1차 (,) 2차(,) ==>
1차 (,) 2차 (,) 넣고 싶은데 수식에서 어디를 바꿔야 하나요?
바꿔 넣어 봤더니 수치가 확 바뀌네요 참고로 전 시그널만 이용합니다
2013-11-14
177
글번호 69495