커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6051
글번호 230811
답변완료
궁금한점이 있어 요청드립니다.
안녕하세요 항상감사드립니다.
지난번에 요청드린 시스템식에서 좀더 필요한조건이 있는데..
수식작성이 어려워 요청드립니다.
아래의 기존식에서 1차 매수후 1타점 익절, 2타점 익절 , 마지막 3타점 익절이 남았는데
3타점 익절이 오기전에 하락하게 되면 2차매수가 진행되도록 수식이 짜여져 있습니다.
여기서 2타점 익절후에 하락하더라도 2차매수가 진행 안되도록 수식을 수정하고 싶습니다.
(참고로 1타점 익절 후에는 하락해도 기존식과 동일하게 2차매수가 진행)
부탁드립니다.
-------------------------------------------------
1
input : 타점1(5000),타점2(4500),타점3(4000),타점4(3500),타점5(3000);
input : 투자금액1(1000000),투자금액2(2000000);
var : entry(False),HH(0);
if Bdate != Bdate[1] Then
{
entry = true;
#5개의 타점중 시가보다 작은것 중에 젤 큰값 계산
HH = 0;
if 타점1 < DayOpen and 타점1 > HH Then
HH = 타점1;
if 타점2 < DayOpen and 타점2 > HH Then
HH = 타점2;
if 타점3 < DayOpen and 타점3 > HH Then
HH = 타점3;
if 타점4 < DayOpen and 타점4 > HH Then
HH = 타점4;
if 타점5 < DayOpen and 타점5 > HH Then
HH = 타점5;
}
if TotalTrades > TotalTrades[1] Then
entry = False;
if MarketPosition == 0 and HH > 0 and DayOpen > HH and sTime < 130000 and entry == 0 Then
{
Buy("1차매수",AtLimit,HH,Floor(투자금액1/min(NextBarOpen,HH)));
}
if MarketPosition == 1 and DayOpen > HH Then
{
Buy("2차매수.",AtLimit,HH*0.98,Floor(투자금액2/min(NextBarOpen,타점1*0.98)));
}
if MarketPosition == 1 Then
{
if MaxEntries == 1 Then
{
ExitLong("1차익절1",AtLimit,avgEntryPrice*1.02,"",Floor(MaxContracts*0.3));
ExitLong("1차익절2",AtLimit,avgEntryPrice*1.03,"",Floor(MaxContracts*0.4));
ExitLong("1차익절3",AtLimit,avgEntryPrice*1.04);
}
if MaxEntries == 2 Then
{
ExitLong("2차익절1",AtLimit,avgEntryPrice*1.01,"",Floor(MaxContracts*0.3));
ExitLong("2차익절2",AtLimit,avgEntryPrice*1.02,"",Floor(MaxContracts*0.4));
ExitLong("2차익절3",AtLimit,avgEntryPrice*1.03);
}
ExitLong("손절",AtStop,avgEntryPrice*0.97);
}
SetStopEndofday(151800);
----------------------------------------------------
2021-09-24
973
글번호 152438
답변완료
기존 수식에서 특정일에 전량 보유 수량 청산하는 수식을 추가하는 방법 알려주세요
만기일 몇시간전에 보유 수량 전량 청산하는 수식을 추가하고 싶어요~~
2021년 12월 15일 오후 11시 30분 30초에 보유 수량 전량 청산 하는 수식입니다.
궁금한점 : 만약 알려주신 수식으로 할경우 봉완성시 청산인가요? 아니면 해당 시간에 맞추어 청산인가요?
기존 수식 해외선물 나스닥 60분봉
input : 범위봉수(400);
input : 매수진입이격(1.000);
input : 추가진입하락폭(0.985);
Input : 수익청산틱수(225);
Input : 손실청산틱수(150);
input : 일봉우상향일수(1);
var : Bcnt(0),Scnt(0);
var : mav(0,Data2);
mav = Data2(ma(C,일봉우상향일수));
if bdate != Bdate[1] Then
{
Bcnt = 0;
Scnt = 0;
}
if MarketPosition == 1 and MarketPosition != MarketPosition[1] Then
Bcnt = Bcnt+1;
if MarketPosition == -1 and MarketPosition != MarketPosition[1] Then
Scnt = Scnt+1;
if MarketPosition <= 0 and Bcnt < 1 and mav > mav[1] Then
Buy("b",AtLimit,Lowest(L,범위봉수)*매수진입이격);
if MarketPosition == 1 then
{
if MaxEntries == 1 then # 85
buy("b2",AtLimit,LatestEntryPrice(0)*추가진입하락폭,1);
if MaxEntries == 2 then # 80
buy("b3",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.015),1);
if MaxEntries == 3 then # 75
buy("b4",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.03),1);
if MaxEntries == 4 then # 70
buy("b5",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.045),1);
if MaxEntries == 5 then # 65
buy("b6",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.06),1);
if MaxEntries == 6 then # 85
buy("b7",AtLimit,LatestEntryPrice(0)*추가진입하락폭-0.075,1);
if MaxEntries == 7 then # 80
buy("b8",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.09),1);
if MaxEntries == 8 then # 75
buy("b9",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.1),1);
if MaxEntries == 9 then # 70
buy("b10",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.11),1);
if MaxEntries == 10 then # 65
buy("b11",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.12),1);
if MaxEntries == 11 then # 80
buy("b12",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.13),1);
if MaxEntries == 12 then # 75
buy("b13",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.14),1);
if MaxEntries == 13 then # 70
buy("b14",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.15),1);
if MaxEntries == 14 then # 65
buy("b15",AtLimit,LatestEntryPrice(0)*(추가진입하락폭-0.16),1);
}
SetStopProfitTarget(PriceScale*수익청산틱수,PointStop);
SetStopLoss(PriceScale*손실청산틱수,PointStop);
2021-09-24
1012
글번호 152437
답변완료
문의합니다
수고 많으십니다
아래지표수식을 실선이 아니라 점선으로 나타나게 할수 있는지요?
감사합니다
var : mav1(0),mav2(0),TL(0);
mav1 = ma(c,10);
mav2 = ma(c,60);
plot1(mav1);
plot2(mav2);
if crossup(mav1,mav2) Then{
TL = TL_New(sdate,stime,0,sdate,stime,99999999);
TL_SetColor(TL,RED);
}
if CrossDown(mav1,mav2) Then{
TL = TL_New(sdate,stime,0,sdate,stime,99999999);
TL_SetColor(TL,blue);
}
2021-09-24
1394
글번호 152436
답변완료
수식 작성 문의드립니다.
손절 후 3개 봉 이내에는 (기존 조건이 충족되지 않아도) 새로운 조건 만족시 재진입하게 하려고 합니다.
예)새 조건:
손절 발생 시
손절 발생한 봉 포함 3개봉 이내에
3개 봉의 저가들 중 두번째로 낮은 값이 손절한 가격보다 높으면
매수진입
2021-09-24
1155
글번호 152434
답변완료
문의드립니다
시스템식 문의드립니다
500틱 900틱 같은 긴 틱봉에서
양봉음봉 조건 만족후
매수매도 진입 이후에
봉 완성이 안되어도
30초 ,60초 경과되었다면
강제청산하는 식을 만들고싶습니다
(아래글에서 불가능답변확인)
봉완성시를 만족하기위해
차트1 10틱차트
차트2 900틱 차트 로 하고
차트2 양봉/음봉 조건 만족후
매수매도 진입 이후
30초 ,60초 경과되었다면
강제청산하는 식을 만들고싶습니다
2021-09-24
873
글번호 152430
답변완료
산식검토
오전에 원격지원받은 내용의 계속입니다
함수Ma5ea를 수정하신 후
3부분의 거래량합계(684회)는 전체거래량합계(684회)와 정확히 일치하는데
3부분의 총수익(137.41p)은 전체총수익(95.87p)과 불일치합니다
이걸 어떻게 이해해야 할지 몰라서 다시 질문드립니다
(HP : 010 구구팔사 일사칠오)
2021-09-24
992
글번호 152428
답변완료
문의드립니다
아래 74046 번 관련 답변 감사합니다
헌데 9시 30분이후 당일 최고가와 최저가선이 고정된후
이후 캔들이 이선을 상하방 어느쪽으로든 돌파한후부터는 세로선과 음성신호가 끝도없이 계속 발생되네요
돌파이후로는 아예 선이 발생이 안되던가 뭔가 수정이 필요한듯 보입니다
* 참고로 아래수식은 만들어주신 수식에 굵기를 제 임의로 추가한것입니다만 문제가 없는지도 검토 부탁드립니다
자꾸 번거롭게해드려서 죄송하고 또 감사합니다!!
-----------------------------------------------------------------------------------------
input : 굵기(2);
var : TL1(0),TL2(0);
if sTime < 93000 Then
{
var1 = DayHigh;
Var2 = DayLow;
Var3 = (var1-Var2);
if H == dayhigh Then
{
TL1 = TL_new(sDate,sTime,0,sDate,sTime,99999999);
TL_SetSize(TL1,굵기);
TL_SetColor(TL1,REd);
PlaySound("C:₩예스트레이더₩data₩Sound₩sound1.wav");
}
if L == DayLow Then
{
TL2 = TL_new(sDate,sTime,0,sDate,sTime,99999999);
TL_SetSize(TL2,굵기);
TL_SetColor(TL2,BLUe);
PlaySound("C:₩예스트레이더₩data₩Sound₩sound1.wav");
}
}
Else
{
if H >= var1 and H[1] < var1[1] Then
{
TL1 = TL_new(sDate,sTime,0,sDate,sTime,99999999);
TL_SetSize(TL1,굵기);
TL_SetColor(TL1,REd);
PlaySound("C:₩예스트레이더₩data₩Sound₩sound1.wav");
}
if L <= Var2 and var1[1] > Var2[1] Then
{
TL2 = TL_new(sDate,sTime,0,sDate,sTime,99999999);
TL_SetSize(TL2,굵기);
TL_SetColor(TL2,BLUe);
PlaySound("C:₩예스트레이더₩data₩Sound₩sound1.wav");
}
}
Plot1(var1);
Plot2(var2);
Plot3(var1+Var3);
Plot4(var2-Var3);
2021-09-24
1012
글번호 152427
Argo 님에 의해서 삭제되었습니다.
2021-09-24
2
글번호 152426
답변완료
지표 질문입니다
전일 종가와 분리된 당일 파라볼릭(종가) 지표에서
종가가 파라볼릭을 상향 돌파할 때 돌파 캔들 고가와 당일 저가의 대칭 가격을 표시한다
종가가 파라볼릭을 하향 돌파할 때 돌파 캔들 저가와 당일 고가의 대칭 가격을 표시한다
감사합니다
2021-09-24
879
글번호 152416