커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8144
글번호 230811
답변완료
문의 드립니다.
10시 반이후 매수는 macd 0선 돌파후 0선 위에서 macd 오실레이터 데드 크로스후 오실레이터 첫 골든 크로스시 매수
10시 반이후 매도는 macd 0선 붕괴후 0선 아래에서 macd 오실레이터 골든 크로스후 오실레이터 첫 데드 크로스시 매도
매수 손절은 신호나온 후 20봉 최저점 -2틱
매도 손절은 매도신호후 20봉 최고점 +2틱
그리고 30틱 이상 수익시 매매 종료하게 해 주시고,
신호가 나온 가격과 신호 나온 가격 대비 =-100틱 가격과 손절가격을 차트에 text로 표시되게
해 주시면 감사하겠습니다.
2019-04-24
243
글번호 128065
답변완료
입력한 가격에서 트레일링과 손절 설정
조건과 진입명에 따라 별도의 트레일링과 손절을 잡고 싶습니다.
항상 4계약으로 진입하고 2계약씩 분할 청산한다고 가정하겠습니다.
직접 입력값: 가격0(60), 가격1(70), 가격2(80), 가격3(90);
조건1성립 = '가격1매수'
조건2성립 = '가격2매수'
라고 했을 때,
(청산 및 손절 조건)
'가격1매수'진입시
손절가격은: '가격0'
청산가격은: '가격2'에 도달했을 때 > 2계약 청산
'가격3'에 도달했을 때 > (나머지 2계약은) 진입가에서 고점대비 80%가격으로 트레일링 스탑
'가격2매수'진입시
손절가격은: '가격1'
청산가격은: '가격3'에 도달했을 때 > 2계약 청산
'가격4'에 도달했을 때 > (나머지 2계약은) 진입가에서 고점대비 80%가격으로 트레일링 스탑
이렇게 설정하고 싶습니다.
도움 부탁드립니다.
2019-04-23
264
글번호 128064
답변완료
다시 정리 해서 질문 올려요 항상 감사합니다
시스템을 안한지가 오래돼서 다시 시작해서..질문도 이상햇나 봐요
다시 정리해서 질문 올려드려요
1.당일 매수 당일 청산하는 주식 시스템입니다
2.피라미딩 진입 허용하면 하루에 5번까지만 진입합니다
진입수량 : 총5회진입 진입1(백만원) , 진입2(2백만원) , 진입3(3백만원),진입4(4백만원 ) 진입5(5백만원)
---------------------------------------------
//진입
시가가 전일 종가보다 2% 작을경우에 시작합니다
<전일종가 대비 진입>
1. 전일종가 대비 3% 하락시 매수 진입1
2. 전일종가 대비 5% 하락시 매수 진입2
<시가대비 진입>
3. 시가대비 5% 하락시 매수 진입3
<저점대비 진입>
4. 저점대비 2% 상승시 매수 진입4
5. 저점대비 3% 상승시 매수 진입5
//시가대비 진입이 먼저 진입할지 저점대비 진입이 먼저 진입할지는 당일의 조건에 따라 달라집니다
//청산
<청산1>
1.전일종가 대비 10% 상승시 총 진입 수량 1/3 청산
2.시가대비 10% 상승시 총 진입 수량 1/3 청산
3. 저점대비 15% 상승시 총 진입 수량 1/3 청산
<청산2>
1. 목표수익 청산 각 진입 별로 10% 수익 발생시 청산
<청산3>
1. 각 진입별로 10% 이상 수익발생시 고점대비 1% 하락시 청산
모든 포지션 당일 청산 완료
2019-04-23
275
글번호 128063
mt4 님에 의해서 삭제되었습니다.
2019-04-23
0
글번호 128062
답변완료
macd 다이버젼스 일월봉문의
지난번 주봉에서 macd 다이버젼스에 대하여 문의하여 아래와 같이 친절한 답변을 받았습니다. 만일 주봉이 아닌 일봉이나 월봉으로 검색하고자 한다면 수식에서 어느부위를 바꾸면 좋을지요?
초보입니다.
감사합니다.
--아래--
macd가 과거봉갯수에 영향을 받습니다.
종목검색 속성에서 검색에 필요한 최소기간을
종목검색에 제공되는 최대봉수인 500으로 지정하고 검색하시기 바랍니다.
Input : short(5), long(20), signal(9);
Var : MACDV(0) , MACDS(0),li(0),lp(0),li1(0),lp1(0),t(0);
MACDV = MACD(short, long);
MACDS = ema(MACDV,signal);
if CrossUp(macdv,macds) Then
{
T = 1;
if lp < lp1 and li > li1 and lp1 > 0 then
find(1);
}
if CrossDown(macdv,macds) Then
{
T = -1;
li = macdv;
lp = l;
li1 = li[1];
lp1 = lp[1];
}
#데드구간 macdv최저가와 주가 최저가 계산
if T == -1 then
{
if macdv < li Then
li = macdv;
if l < lp Then
lp = l;
}
2019-04-23
320
글번호 128061
답변완료
시스템 문의 드립니다.
input : Period(20);
var : HH(0),LL(0),MAV(0) ;
HH = highest(H,Period);
LL = lowest(L,period/2);
MAV = ma(c,200);
If C>HH and C>MAV then
Buy("매수",onclose);
If C<round(L,LL) then
exitlong("매도청산",onclose);
======================================================================
20일(변수) 고가보다 종가가 클 때 매수
10일(변수) 저가보다 종가가 작을 때 매도청산
을 계획했던 식인데 어디에서 잘못됐는지 전혀 매수매도가 이루어지지 않네요...
답변 부탁드립니다.
2019-04-23
270
글번호 128060
답변완료
예스글로발
안녕하세요?
예스글로발 한투 증권 사용중입니다.
Data1분봉
Data2 일봉 일경우
SGX a50 지수 에서 Data2 일봉 의 시가와 종가가
한국시간 00:00 24:00 인가요?
2019-04-23
306
글번호 128055
답변완료
수식문의드립니다
아래 청산수식1, 2를 예스트레이더에 사용할수 있게 변경 부탁 드립니다
청산수식 1
Param : Period(60), Period1(5), Period2(10);
Vars : oTEMA(0);
v99 = (H + L + C ) / 3;
V1 = wAverage(v99, Period);
oTEMA = ema(ema(ema(c, Period1), Period1), Period1);
V2 = highestsince(Period2, oTEMA > oTEMA[1], oTEMA);
V0 = (V1 + V2)/2;
Cond1 = CrossDown(C, v0);
If COND1 Then ExitLong();
청산수식 2
Params : Period(5), Period0(10), Period1(14), SignalPeriod(9);
Vars : TickSize(0), bCNT0(0), bCNT1(0), bCNT2(0);
Vars : SP(0), entryVol(0), ExBlockCOND(False), blockCond(True);
Vars : MA1(0), HH(0), LL(0), hNUM(0), lNUM(0), DownTrend(False);
Ticksize = onetick * pricescale;
v99 = (H + L + C + O) / 4;
v1 = wAverage(v99, Period);
v2 = triAverage(v99, Period0);
Cond1 = CrossDown(v1 , v2);
MA1 = (wAverage(v99, Period1) + Average(v99, Period1))/2;
If MA1[2] > MA1[1] And MA1[1] < MA1 Then LL = MA1;
If MA1[2] < MA1[1] And MA1[1] > MA1 Then HH = MA1;
If HH[1] <> HH Or LL[1] <> LL Then
Begin
hNUM = 0;
lNum = 0;
End;
If MA1[1] < MA1 Then lNum = lNUM + 1;
If MA1[1] > MA1 Then hNum = hNUM - 1;
v5 = Average(lNum, SignalPeriod);
Cond7 = CrossDown(lNum , V5);
If Cond1 and Cond7 Then Exitlong("청산");
SetBreakEven(6 * TIckSize * cUrrentContracts);
SetStopTrailing(10 * TickSize * CurrentContracts, 15 * TickSize * Currentcontracts);
SP = SignalPosition;
If SP <> SP[1] And SP <> 0 Then entryVol = CurrentContracts;
If EntryPrice <> 0 Then
Begin
If SP = 1 Then
Begin
If maxcontractprofit > (4 * TickSize) Then bCNT0 = bCNT0 + 1
Else If maxcontractprofit > (3 * TickSize) Then bCNT1 = bCNT1 + 1
Else If maxcontractprofit > (2 * TickSize) Then bCNT2 = bCNT2 + 1;
End;
End
Else
Begin
bCNT0 = 0;
bCNT1 = 0;
bCNT2 = 0;
End;
If bCNT0 >= 1 And H > EntryPrice - TickSize Then ExitLong("E_1", atstop, EntryPrice - TickSize)
Else IF bCNT1 >= 1 And H > EntryPrice - (2 * TickSize) Then Exitlong("E_2", AtStop, EntryPrice - (2 * TIckSIze))
Else If bCNT2 >= 1 And H > EntryPrice - (3 * Ticksize) Then ExitLong("E_3", AtStop, EntryPrice - (3 * TickSize));
If CurrentContracts = entryVol And (False = ExBlockCOND) And (H < EntryPrice + (5 * TickSize)) Then
ExitLong("청산1", Atlimit, EntryPrice + (5 * TickSize), DEF, 1);
2019-04-23
326
글번호 128054
답변완료
청산 로직 부탁 드립니다.
* 매번 많은 도움에 고맙습니다.
* 추가 매수 및 청산 로직 좀 요청 드립니다.
var1 = ma(c,5);
var2 = ma(c,20);
if CrossUp(var1,var2) Then buy()
if crossdown(var1,var2) then sell() 에서
요청1) 10틱 이하 손실 이면 추가 매수
요청2) 추가 매수후 (추가매수가 안될수도 있음) 최초 1차 매수가 대비 14틱 수익이면 청산
요청3) 14틱 수익 까지 못가고 8틱 이상 수익 났다가 5틱 으로 수익이 줄어들면 청산
* 많이 부탁 드려서 죄송합니다. 고맙습니다.
2019-04-23
293
글번호 128048