커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4397
글번호 230811
답변완료
질문드립니다.
현재 캔들이 5이평보다 위에있지만, 이전 5캔들이 5이평을 터치했거나 상승한적이 있으면 신호가 나지않게합니다.
2017-04-25
181
글번호 109168
Argo 님에 의해서 삭제되었습니다.
2017-04-25
1
글번호 109167
답변완료
검색식 부탁드립니다.
주식 차트의
3분봉에서 3일간의 최고최저의 중심값을
현재가가 돌파했을 때 실시간 검색으로 떳으면 하는데요.
가능한가요?
2017-04-25
183
글번호 109166
답변완료
index는 어떨때 주로 응용하나요?
예를들어
var2 = index로 선언하고
if index -var2 == ~ then
이런식의 글이 종종 보이는데요. 같은 index를 왜 - 하는건가요?
그리고 index의 주로 사용처와 응용문을 첨부해주시면 감사하겠습니다.
2017-04-25
180
글번호 109165
답변완료
수익구간 표시 수식 문의
안녕하세요 현제 수익구간 표시 수식을 쓰고 있는데요.
항생에세는 표시가 제대로 되는데
유로/엔화/골드/오일 에서는 수익구간 표시가 나오지 않네요
현제 쓰는 수식은 아래와 같습니다.
유로/엔화/골드/오일에서도 표시가 나오게끔 하는 수식 부탁드립니다.
var : tx(0);
if index == 5 Then
sell();
if MarketPosition != 0 Then{
var21 = MaxPositionProfit/PriceScale;
#수익
if var21 >= 10 and var21[1] < 10 Then{
tx = Text_New(sdate,stime,iff(MarketPosition==1,H+7,L-7),"10틱");
Text_SetStyle(tx,2,2);
}
if var21 >= 20 and var21[1] < 20 Then{
tx = Text_New(sdate,stime,iff(MarketPosition==1,H+7,L-7),"20틱");
Text_SetStyle(tx,2,2);
}
2017-04-25
173
글번호 109164
답변완료
수식문의드립니다.
수식문의 드립니다. 감사합니다.
#진입(Data1,2,3 조건)
1.
Data3 의 MACD Oscillator 값이 >0 이고
Data2 의 MACD Oscillator 값이 >0 이고
Data2 의 MACD Oscillator 값이 Crossup 하고 10일선이 20일선을 Crossup하면 매수
(MACD Oscillator 값이 +인상태에서 10일선이 20일선을 Crossup 하면 매수)
2.
Data3 의 MACD Oscillator 값이 >0 이고
Data2 의 MACD Oscillator 값이 >0 이고
Data1 의 10일선이 20일선을 Crossup하고 MACD Oscillator 값이 Crossup 하면 매수
(10일>20일인 상태에서 MACD Oscillator 값이 +로 Crossup 하면 매수)
(1,2 매수가 같은 조건인지도 모르겠네요..)
3.
Data3 의 MACD Oscillator 값이 <0 이고
Data2 의 MACD Oscillator 값이 <0 이고
Data1 의 MACD Oscillator 값이 Crossdown 하고 10일선이 20일선을 Crossdown하면 매도
(MACD Oscillator 값이 -인상태에서 10일선이 20일선을 Crossdown 하면 매도)
4.
Data3 의 MACD Oscillator 값이 <0 이고
Data2 의 MACD Oscillator 값이 <0 이고
Data1 의 10일선이 20일선을 Crossdown하고 MACD Oscillator 값이 Crossdown 하면 매도
(10일<20일인 상태에서 MACD Oscillator 값이 -로 Crossdown 하면 매수)
(3,4 매도가 같은 조건인지도 모르겠네요..)
2017-04-25
186
글번호 109155
답변완료
시스템식 문의드립니다
안녕하세요
수정을 하다가 잘 안되어 다시 문의드립니다
매수전 조건
ㄱ.10분봉 기준
ㄴ. 시가 5일선 보다 2%이상 상승한 상태
ㄷ.0900 1229사이 최저가가 5일선 보다 최소 2%이상 위에 있는 상태
ㄹ.당일 5일선 돌파나 이탈이 없는 상태
ㅁ.1230의 현재가가 시가보다 낮은 상태
매수
ㄱ. 0900 1229사이에 당일 최저가 대비 3%상승이 있을때 -
1230이후 0900 1229 사이의 최저가 보다 낮은 상태이고,
1230 이후 5분봉상(타주기 참조가 안되면 10분봉상으로 부탁드려요)
2연속 양봉발생시 두번째 양봉의 고저 중심가에 1차 시장가 매수, 두번째 양봉의저가 +0.5%에 2차 시장가 매수
ㄴ. 0900 1229사이에 당일 최저가 대비 3% 상승이 없을때 -
1230 이후 5분봉상(타주기 참조가 안되면 10분봉상으로 부탁드려요)
2연속 양봉발생시 두번째 양봉의 고저 중심가에 1차 시장가 매수, 두번째 양봉의저가 +0.5%에 2차 시장가 매수
매도
ㄱ.매수가 대비 4%하락 시 매도
ㄴ.매수가 대비 4%상승시 매도
ㄷ.매수가 대비 3%상승후 0.5%상승까지 하락하면 매도
ㄹ. 매수후 이틀이 지나면 시가 매도
항상 감사합니다!!~~
2017-04-26
196
글번호 109154
답변완료
ask
수식 시뮬레이션 결과 오류가 있습니다.
일관된 오류는 시뮬레이션 기간동안 2차 sell 거래를 안합니다............그림 1 참조
선택적 오류는 1차 sell 거래 후 손절은 정상 작동합니다.
하지만 익절의 경우에는 작동하지 않고 end of day로 청산합니다..........그림 2 참조
아마도 2차 sell 거래가 작동하지 않아서 생기는 문제 같습니다.
변경 전 buy 수식(2회만 거래)에서는 상황별로 아래 기능이 정상적으로 작동합니다
1차 buy 진입,손절,익절,end of day
2차 buy 진입,손절,익절,end of day
살펴주세요.
***
안녕하세요
예스스탁입니다.
input : b1(11),b2(13),X1(13),X2(13),진입눌림(4),진입돌파(4),청산눌림(4),청산돌파(4);
var : T1(0),entry(0),HH(0),LL(0),EH(0),EL(0),E1(0),H1(0),i1(0),S1(0),L1(0);
if Bdate != Bdate[1] Then{
T1 = TotalTrades;
E1 = 0;
}
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = (TotalTrades-T1)+1;
if MarketPosition == 0 and entry == 0 Then{
if E1 == 0 and C <= DayHigh-PriceScale*B1 and C[1] < DayHigh-PriceScale*B1 Then{
E1 = 1;
L1 = L;
i1 = index;
}
if E1 == 1 and index > i1 then{
if L < L1 Then
L1 = L;
if H >= L1+PriceScale*진입눌림 Then{
E1 = 2;
i1 = index;
S1 = L1;
}
}
if E1 == 2 and index > i1 and C <= S1-PriceScale*진입돌파 Then{
sell("s1");
E1 = 0;
}
}
if MarketPosition == -1 Then{
if entry == 1 then{
if CurrentContracts > CurrentContracts[1] Then{
EL = L;
E1 = 0;
}
if L < EL Then
EL = L;
if E1 == 0 and C >= EL+PriceScale*X1 Then{
E1 = 1;
H1 = H;
i1 = index;
}
if E1 == 1 and index > i1 Then{
if H > H1 Then
H1 = H;
if L <= H1-PriceScale*청산눌림 Then{
E1 = 2;
I1 = index;
S1 = H1;
}
}
if E1 == 2 and index > i1 and C >= S1+PriceScale*청산돌파 Then{
ExitShort("sx1");
E1 = 0;
}
}
}
if TotalTrades > TotalTrades[1] Then
HH = H;
if L < HH Then
HH = H;
if MarketPosition == 0 and entry == 1 Then{
if E1 == 0 and C <= HH-PriceScale*B2 and C[1] < HH-PriceScale*B2 Then{
E1 = 1;
L1 = L;
i1 = index;
}
if E1 == 1 and index > i1 then{
if L < L1 Then
L1 = L;
if H >= L1+PriceScale*진입눌림 Then{
E1 = 2;
i1 = index;
S1 = L1;
}
}
if E1 == 2 and index > i1 and C <= S1-PriceScale*진입돌파 Then{
sell("s2");
}
}
if MarketPosition == -1 Then{
if entry == 2 then{
if CurrentContracts > CurrentContracts[1] Then
E1 = 0;
if E1 == 0 and H >= EntryPrice+PriceScale*13 Then{
E1 = 1;
H1 = H;
i1 = index;
}
if E1 == 1 and index > i1 Then{
if H > H1 Then
H1 = H;
if L <= H1-PriceScale*청산눌림 Then{
E1 = 2;
I1 = index;
S1 = H1;
}
}
if E1 == 2 and index > i1 and C >= S1+PriceScale*청산돌파 Then{
ExitShort("sx3");
E1 = 0;
}
}
}
즐거운 하루되세요
> 좌오비우오비 님이 쓴 글입니다.
> 제목 : 하락2회 수식
> 아래 수식은 상승추세시 buy만 2회 하는 수식입니다.
하락추세시 sell만 2회 하는 수식으로 전환바랍니다.
거래 방식은 BUY와 같고 역방향이므로
BUY와 SELL의 진입과 청산 지점은 다릅니다.
(BUY1->SELL1->BUY2->SELL2 reverse 거래)
늘 고맙습니다.
******
input : b1(11),b2(13),X1(13),X2(13),진입눌림(4),진입돌파(4),청산눌림(4),청산돌파(4);
var : T1(0),entry(0),LL(0),EH(0),E1(0),H1(0),i1(0),S1(0),L1(0);
if Bdate != Bdate[1] Then{
T1 = TotalTrades;
E1 = 0;
}
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = (TotalTrades-T1)+1;
if MarketPosition == 0 and entry == 0 Then{
if E1 == 0 and C >= daylow+PriceScale*B1 and C[1] < daylow+PriceScale*B1 Then{
E1 = 1;
H1 = H;
i1 = index;
}
if E1 == 1 and index > i1 then{
if H > H1 Then
H1 = H;
if L <= H1-PriceScale*진입눌림 Then{
E1 = 2;
i1 = index;
S1 = H1;
}
}
if E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파 Then{
buy("b1");
E1 = 0;
}
}
if MarketPosition == 1 Then{
if entry == 1 then{
if CurrentContracts > CurrentContracts[1] Then{
EH = H;
E1 = 0;
}
if H > EH Then
EH = H;
if E1 == 0 and C <= EH-PriceScale*X1 Then{
E1 = 1;
L1 = L;
i1 = index;
}
if E1 == 1 and index > i1 Then{
if L < L1 Then
L1 = L;
if H >= L1+PriceScale*청산눌림 Then{
E1 = 2;
I1 = index;
S1 = L1;
}
}
if E1 == 2 and index > i1 and C <= S1-PriceScale*청산돌파 Then{
exitlong("bx1");
E1 = 0;
}
}
}
if TotalTrades > TotalTrades[1] Then
LL = L;
if L < LL Then
LL = L;
if MarketPosition == 0 and entry == 1 Then{
if E1 == 0 and C >= LL+PriceScale*B2 and C[1] < LL+PriceScale*B2 Then{
E1 = 1;
H1 = H;
i1 = index;
}
if E1 == 1 and index > i1 then{
if H > H1 Then
H1 = H;
if L <= H1-PriceScale*진입눌림 Then{
E1 = 2;
i1 = index;
S1 = H1;
}
}
if E1 == 2 and index > i1 and C >= S1+PriceScale*진입돌파 Then{
buy("b2");
}
}
#if MarketPosition == 1 Then{
# if MarketPosition== 1 and entry == 2 Then
# exitlong("bx3",AtStop,EntryPrice-PriceScale*13);
#}
if MarketPosition == 1 Then{
if entry == 2 then{
if CurrentContracts > CurrentContracts[1] Then
E1 = 0;
if E1 == 0 and L <= EntryPrice-PriceScale*13 Then{
E1 = 1;
L1 = L;
i1 = index;
}
if E1 == 1 and index > i1 Then{
if L < L1 Then
L1 = L;
if H >= L1+PriceScale*청산눌림 Then{
E1 = 2;
I1 = index;
S1 = L1;
}
}
if E1 == 2 and index > i1 and C <= S1-PriceScale*청산돌파 Then{
exitlong("bx3");
E1 = 0;
}
}
}
2024-09-02
201
글번호 109149
답변완료
고맙습니다. ^.^
항상감사합니다. ^.^
1. 매일 10:00에 매수 다음날 10:30 에 매도
2. 매주 금요일 10:00 매수. 매주 월요일 10:00 매도
3. 코스피 200종목중 최근 5일간 외국인 지분율 낮은 종목(하위 30개)
지분감소율이 가장 높은종목(상위 30개)
4. 1000~5000원 종목중 개인순매수 비중 높은 종목(상위 30개 )
5. 이평선 3일선이 20일 돌파시 마다 매수 하여 총 5회 매수하고, 5% 이상 수익 발생시 매도한다고 가정했을때
1회차와 2회차는 아직 5% 수익이 발생치 않았으나 3회차 매수된 것이 5% 를 달성 하면서
1,2,3회차가 모두 매도 되는 식부탁드립니다 물론 5회차 까지 매수가 이루어졌을때도 동일해야 합니다 ^.^
2017-04-25
184
글번호 109147