커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7668
글번호 230811
답변완료
간단한 질문.
아직도 헤매는..1인 입니다..
일봉 atr과 분봉에서 구한 일봉 atr 값..
일봉 값과 분봉 값을 비교해보니 제가 구한 값이 틀려서요.
수식을 올릴테니 봐주세요.
==일봉 수식==
Input : Period(9) , Period1(14) ;
Plot1(ATR(Period), "Average True Range");
Plot2(ATR(Period1), "Average True Range");
==분봉 수식==
input : Period(9),Period2(14);
var : sumV(0), maV(0), cnt(0),sumV2(0), maV2(0), cnt2(0);
sumV = 0;
For cnt = 0 to Period-1 {
sumV = sumV + max(dayhigh(cnt)-dayLow(cnt),abs(dayClose(cnt+1)-dayhigh(cnt)),abs(dayClose(cnt+1)-dayLow(cnt)));
}
maV = sumV/Period;
sumV2 = 0;
For cnt2 = 0 to Period2-1 {
sumV2 = sumV2 + max(dayhigh(cnt2)-dayLow(cnt2),abs(dayClose(cnt2+1)-dayhigh(cnt2)),abs(dayClose(cnt2+1)-dayLow(cnt2)));
}
maV2 = sumV2/Period2;
2012-03-30
357
글번호 49562
답변완료
매수 신호 후에 매수가 안되는 경우
60분 봉으로 설정해 놨는데 2시~3시에 있는 봉에서 매수 신호가 왔습니다.
하지만, 매수가 되지 않았습니다. 정확히 안봐서 모르겠지만, 2:50 동시 호가 이후에 되었는지 아니면 봉이 완성된 후에 매수 신호가 오는건지 잘 모르겠지만, 분명 신호가 발생했는데 매수가 되지 않았습니다.
buy 함수를 어떻게 해야하는지요?
그리고, 매수신호 후에 수동으로 매수를 한 후에 매도 신호가 나오면 매도가 되나요?
2012-03-30
405
글번호 49561
답변완료
음...
안녕 하세요
if crossup(var1, var3) then{
if m(c,5) > ma(c,50) then{
buy("매수", atstop, ma(c,50)+0.5);
}
if crossup(var1, var3) then{
if m(c,5) < ma(c,50 then {
sell("매도",atstop, ma(c,50)-0.5);
}
}
1분봉에서
var1이 var3을 3분전에 돌파한 상태에서 5이동이 50을 돌파하고
다음 봉에서 50이동보다 가격이 0.5높아지면 매수가 되는건가요?
제가 해보니까 그렇게 되는데요..
var1이 var3을 돌파했을때가 3분전이면 조건이 만족하지 않는거 아닌가요?
crossup 도움말 보니까 var1 > var3 and var1[1] <= var3[1] 이라고 되어
있던데.. 그러면 crossup조건이 만족할때 아래 조건도 동시에 만족
되어야 하는거 아닌가요?
위에 cross조건이 언제까지 만족하는건가요?
2012-03-30
359
글번호 49556
답변완료
진입..
안녕 하세여
전에 진입 방향으로 손해가 나면 그날은 그방향으로 진입을 하지 않는 식으로
var : Bloss(0),Sloss(0),cnt1(0);
Bloss = -1;
Sloss = -1;
for cnt1 = 0 to 20{
if EntryDate(cnt) == sdate then{
if MarketPosition(cnt) == 1 and PositionProfit(cnt) < 0 Then
Bloss = Bloss+1;
if MarketPosition(cnt) == -1 and PositionProfit(cnt) < 0 Then
Sloss = Sloss+1;
}
}
if bloss < 0 then {
buy():
}
if sloss < 0 then {
sell();
}
라고 가르쳐 주셨는데요..
적용이 왜 안될까요?
틀린 부분이 있나요?
계속 진입을 하네요.. 손해가나도..
야간 선물까지 복합으로 해서 그런가요?
답변 부탁 드립니다.
2012-03-30
304
글번호 49546
답변완료
진입가
매수진입후 1pt 상승시 청산
매도진입후 1pt 하락시 청산
하고, 청산후 진입금지
하는 매매식 부탁합니다
2012-03-30
320
글번호 49544
답변완료
궁금한게 있습니다~
밑에 코드는 진입횟수 제한이랑 만기일 청산을 다시 짜주신건데,
진입횟수제한이 3회까지는되는데 1회, 2회는 안되는데 왜 그런거죠?
그리고 하루에 2pt 이상 손실이나면 모든 포지션을 청산시키고, 모든 재진입을 금지 시킬수있나요?
그리고 이건 아래 코드와 상관이 없는데, 야간cme 종가, 시가를 불러올수는없나요?
input : N(3);
var : va1(0),va2(0),va3(0);
var : count(0);
#당일진입횟수계산
Count = 0 ;
for Value1 = 0 to 10 {
if EntryDate( Value1 ) == sdate then
Count = Count + 1;
}
Condition1 = ExitDate(1) == sdate and IsExitName("StopProfittarget",1) == true;
if dayindex == 0 Then{
if data2(c) > 7000 Then
buy();
if data2(c) < -7000 Then
sell();
}
if Condition1 == false or (Condition1 == true and countif(CrossDown(data2(c),0) or Crossup(data2(c),0),BarsSinceExit(1)) >= 1) Then{
if crossup(data2(c),7000) and count < N Then
buy();
if CrossDown(data2(c),-7000) and Count < N Then
sell();
}
SetStopLoss(1,PointStop);
SetStopProfittarget(2,PointStop);
va1 = int(date/100)-int(date/10000)*100;
va2 = date - int(date/100)*100;
va3 = DayOfWeek(date);
if va1%3 == 0 and
va2 >= 8 and va2 <= 14 and
va3 == 4 then
SetStopEndofday(144000);#선물만기일
Else
SetStopEndofday(150430);#만기일이 아닐때
2012-03-30
312
글번호 49543
소주까기인형 님에 의해서 삭제되었습니다.
2012-03-30
27
글번호 49542
답변완료
거래순서별 조건설정
거래순서 별로 청산조건을 따로 설정할수 있는지요?
예를 들어 첫번째 진입의 경우 목표가를 0.5피 손절 0.5피.
두번째 부터 진입의 경우 목표가 1피 손절 1피 이런 식으로 말입니다.
if AA>BB then
buy();
if AA<BB then
sell();
가능하다면 위의 수식에 첨부 부탁드립니다.
봉의 개수에 세기에 관한 질문입니다.
예를 들어 진입후 10개봉 내에 청산조건을 만족하면 청산하는 식을 구현 하고자 합니다.
같이 부탁드립니다.
2012-03-30
293
글번호 49541
답변완료
간단한 질문.
주참조 코스피 선물 일봉, data2 에 다우 일봉을 띄운후
값을 가져올때 오늘 장 마감후 오늘 새벽 까지의 다우 데이터를 오려면 어떻게 해야하나요.
현재봉을 기준으로 data2의 값을 가져오려하니 어제 시점에 값을 가져오더군요..
당연한건데요, 현재봉 완성후 data2의 값이 완성되고 이후 data2값이 완성되었을때에 data2의 시점 값을 쓰려면 어떻게 해야하나요?
2012-03-30
334
글번호 49540