커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1541
글번호 230811
깜피 님에 의해서 삭제되었습니다.
2023-04-19
0
글번호 168312
답변완료
함수요청
안녕하세요?
아래의 전략에 대해 스크립트 작성 요청드립니다.
국내선물 5분봉으로 일중거래를 하고자 합니다.
[1]
Macd와 시그널이 모두 0보다 크고 Macd가 시그널을 하향돌파 하되(Macd 오실레이터 0전환) 당일 누적으로 세번째 교차하면 익봉 시가에 매도
Macd와 시그널이 모두 0보다 작고 Macd가 시그널을 상향돌파 하되(Macd 오실레이터 0전환) 당일 누적으로 세번째 교차하면 익봉 시가에 매수
매도 진입 후 Macd와 시그널이 모두 0보다 작고 Macd가 시그널을 상향돌파 하면(Macd 오실레이터 0전환) 익봉 시가에 매도청산
매수 진입 후 Macd와 시그널이 모두 0보다 크고 Macd가 시그널을 하향돌파 하면(Macd 오실레이터 0전환) 익봉 시가에 매수청산
매수든 매도든 진입기준으로 최대 1회입니다.
15시 20분 강제청산입니다.
[2]
Macd와 시그널이 모두 0보다 크고 Macd가 시그널을 하향돌파 하되(Macd 오실레이터 0전환) 당일 누적으로 세번째 교차하면 익봉 시가에 매도
Macd와 시그널이 모두 0보다 작고 Macd가 시그널을 상향돌파 하되(Macd 오실레이터 0전환) 당일 누적으로 세번째 교차하면 익봉 시가에 매수
매도진입 후 Macd와 시그널이 모두 0보다 작고 Macd가 시그널을 상향돌파 하되(Macd 오실레이터 0전환) 진입 이후에 세번째 교차하면 익봉 시가에 매도청산
매수진입 후Macd와 시그널이 모두 0보다 크고 Macd가 시그널을 하향돌파 하되(Macd 오실레이터 0전환) 진입 이후에 세번째 교차하면 익봉 시가에 매수청산
매수든 매도든 진입기준으로 최대 1회입니다.
15시 20분 강제청산입니다.
2023-04-19
1283
글번호 168311
답변완료
문의드립니다 ㅠ
첫번째 질문입니다
Data1 : 삼전 1분봉 차트
Data2 : 삼전 일봉 차트
매수해서 보유하고 있는 상황이라고 가정하고,
아래 1번과 2번의 차이는, NextBarStime >= 151000 인지 stime >= 151000 인지 밖에 없는데
복사붙여넣기해서 1번을 해보면 아예 작동이 안되고 2번을 해보면 작동이 잘 됩니다.
'이번봉시간', '다음봉시간'이라 별 차이가 없을 것 같은데 왜 그럴까요?
1번
Else if MarketPosition==1 and stime >= 151000 and NextBarSdate == sDate Then
SetStopLoss( 1*Data2(ATr(20)) , PointStop );
Else
SetStopLoss(0);
2번
Else if MarketPosition==1 and NextBarStime >= 151000 and NextBarSdate == sDate Then
SetStopLoss( 1*Data2(ATr(20)) , PointStop );
Else
SetStopLoss(0);
--------------------------------------------
두번째 질문입니다.
위의 것과 연계된 질문인데....
피라미딩을 하게 되면 첫진입 -> 피라미딩1 -> 피라미딩2 이런식으로 진행이 될때,
최초 진입한 경우, 최초진입가 - 1*Data2(ATr(20)) 가 되면 전부 청산하고
이와 별개로 따로 강제청산을 설정해줬습니다 (진입가보다 (2*Data2(ATr(20)) 이상 떨어지면 강제청산)
최초 진입한 물량(피라미딩 하기 전)의 손절선은, 최초 진입가격 - 1*Data2(ATr(20)가 되고,
이후 가격이 상승하면서 피라미딩한 물량들의 강제청산 손절선은, 개별 진입가격 - 2*Data2(ATr(20))으로 하고자 했습니다
Data1 : 삼전 1분봉 차트
Data2 : 삼전 일봉 차트
if MarketPosition==1 and Stime >= 151000 and NextBarSdate == sDate Then
{
ExitLong("최초손절", atstop, EntryPrice - 1*Data2(ATr(20)) );
}
Else if MarketPosition==1 and Stime >= 151000 and NextBarSdate == sDate Then
SetStopLoss( 2*Data2(ATr(20)) , PointStop );
Else
SetStopLoss(0);
여기서도 Stime이 아니라 NextBarStime으로 하면 작동이 됩니다
(왜 그런지 1번 질문에 여쭤봤습니다)
근데 최초손절에도 NextBarStime을 설정하고 / 강제청산에도 NextBarStime을 설정하면
최초손절만 작동하고 else if에 있는 강제청산은 작동하지 않습니다.
이게 이해가 안되서 질문 남깁니다 ㅠㅠ
둘다 잘 작동하게 하려면 어찌해야할까요....
2023-04-19
1038
글번호 168305
답변완료
문의드립니다
1분봉 기준으로 주식 차트를 보면,
3시 17분봉, 18분봉, 19분봉, 20분봉 -> 동시호가 -> 31분봉(확정된 종가)
이렇게 나타납니다
Data1 : 해당 종목의 1분봉 차트
Data2 : 해당 종목의 일봉 차트 (전일부터 20일간 고가를 판단하기 위함)
if MarketPosition==0 and stime >= 151000 Then
{
Buy("진입", AtStop, Data2(highest(C,20)), 수량 );
}
이렇게 식을 짰을때,
20분봉까지는 실시간 현재가가 Data2(highest(C,20))를 넘지못하다가,
31분봉째 확정된 종가가 Data2(highest(C,20))를 넘어섰다면
1. 다음날 아침 9시 이후(9시? 9시1분?)에 buy 주문이 들어가는지요?
2. 주문이 안들어간다면, 주문이 들어가게 하려면 어떻게 식을 만들어야할까요?
: 분봉차트에서 마지막 확정된 종가(31분봉)가 Data2(highest(C,20))를 넘어섰을때,
다음날 개장할때쯤(9시나 9시1분) buy주문이 되도록 하고 싶습니다.
2023-04-19
811
글번호 168304
답변완료
문의드립니다
분봉차트상에서
일간수익률(예를 들어 일봉 종가과 종가기준으로 0.01 0.002...
장중 수익률은 계산하지 말고 장중이라면 전일의 수익률까지만)의 N일 표준편차를
계산해내는 식을 짜주시면 매우 감사하겠습니다.
2023-04-19
986
글번호 168303
답변완료
문의
그물망 차트에서
상한선 상승돌파할때 매수
하한선 하락돌파할때 매도
부탁드리고요
또한
input : period(5),interval(5);
var : Hval(0),cnt(0);
array : value[10](0);
value[1] = ma(C, period);
value[2] = ma(C, period+interval*1);
value[3] = ma(C, period+interval*2);
value[4] = ma(C, period+interval*3);
value[5] = ma(C, period+interval*4);
value[6] = ma(C, period+interval*5);
value[7] = ma(C, period+interval*6);
value[8] = ma(C, period+interval*7);
value[9] = ma(C, period+interval*8);
Hval = 0;
for cnt = 1 to 9{
if Hval > value[cnt] then
Hval = value[cnt];
}
if crossup(C,Hval) then
find(1);
검증해보니, interval.이 문제가 있다고 나오는데 식 수정부탁드릴꼐요..
2023-04-18
1246
글번호 168302
답변완료
수식 문의 드립니다.
매수 : cci(9.10)에서 cci가 시그날을 상향시 매수
cci가 100을 상향시 매수
매도: cci가 100을 하향시 매도
즉시 손절 손절은 cci가 100 아래에 있고 10% 이하로 하향시 즉시 손절
2023-04-18
1089
글번호 168301
답변완료
수고많으십니다. 수식수정부탁드립니다.
/*수고많으십니다.
수식작성 왕초보입니다.
기본차트와 종목추가(Data2)두종목의 체결정보를 수동으로 입력하고, 두종목의 손익의 합이 일정금액이상이면
두종목 모두 동시청산을 하고 재진입 안되도록 수동입력정보를 (0)으로 리셋하는 시스템을 만드는 것이 목표입니다.*/
Inputs: 보유포지션(1), 보유수량(2), 체결가격(13,270.50),호가(0.25),틱가치(5),목표수익(500),보유포지션2(-1), 보유수량2(2), 체결가격2(2),호가2(0.01),틱가치2(10);
//기본차트
//기본챠트 매도인지매수인지 포지션현황
MarketPosition==(보유포지션);
//기본챠트 보유수량
CurrentContracts==(보유수량);
//기본챠트 체결가격
EntryPrice==(체결가격);
//기본차트의 가격차이 진입가격이 13,270.50이고 기본차트 종가가 13,300.50 이라면 차이나는 지수는 30
var1=MarketPosition-c;
//차이나는 지수30 이나 호가0.25 이므로 120포인트로 환산한다.
Var2=var1/호가;
//수익포인트 120에 틱가치5달러를 하면 기본챠트수익이 600달러
Var3=Var2 *(틱가치);
//보조챠트
//보조챠트 매도인지매수인지 포지션현황
var21=data2(MarketPosition==(보유포지션));
//보조챠트 보유수량
data2(CurrentContracts==(보유수량));
//보조챠트 체결가격
data2(EntryPrice==(체결가격));
//보조차트의 가격차이 진인가격이 80.00이고 기본차트 종가가 80.10이라면 차이나는지수는 0.10
var11=var21-data2(c);
//차이나는 지수0.10이나 호가0.01이므로 10포인트로 환산한다.
Var12=var11/호가;
//손실포인트 10에 틱가치10달러를 하면 보조챠트손익이 100달러
Var13=Var12 *(틱가치);
//기본챠트수익과 보조챠트손실 합계 수익500달러
var14=var3+var13;
//목표수익발생되었으므로 두종목포지션 일괄동시청산
//기본챠트 청산
if 목표수익>=500 and MarketPosition==1 Then
{
Sell();
}
if 목표수익>=500 and MarketPosition==-1 Then
{
Buy();
}
//보조챠트 청산
if 목표수익>=500 and Var21==1 Then
{
Sell();
}
if 목표수익>=500 and Var21==-1 Then
{
Buy();
}
/*질문 : 1. 위와같이 수식을 작성하는 것이 맞는지 검토 부탁드립니다.
2. 포지션이 여러개인경우 청산수식 부탁드립니다.
3. 포지션이 쳥산된 경우 수동입력값을 (0)으로 리셋하는 수식 부탁드립니다.*/
검증시 에러가 나네요
줄수6 열수 37 배열형 입력변수는 함수에서만 쓸수 있습니다.
줄수6 열수 48 문번에러, 잘몰된 토큰:comma(,)올 수 있는 것
줄수30 열수1 뒤의수식에는 데이터번호가 일요 없습니다.
감사합니다.
2023-04-18
699
글번호 168300
kns 님에 의해서 삭제되었습니다.
2023-04-18
26
글번호 168299