커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3571
글번호 230811
답변완료
수식 부탁드립니다.
안녕하세요.
예스트레이더에서 일반 봉차트가 아닌 Heikin Ash 차트의 관점에서 아래의 수식 부탁드립니다. (Heikin Ash는 시,고,저,종가가 일반 봉차트로부터의 계산식에 의해 만들어지는 거라 가능할 것으로 생각이 됩니다.)
간단한 수식이라 작성해 주신 수식을 기반으로 수식 작성에 참고하려고 합니다.
----- 아래의 시.고.저.종가는 Hekin Ash 차트에서의 값임 -----
1) 매수 진입: (종가 > 시가) and (시가=저가)
2) 매수 청산: ((종가 < 시가) and (시가=고가)) 또는 (음봉 2개)
3) 매도 진입: (종가 < 시가) and (시가=고가)
4) 매도 청산: ((종가 > 시가) and (시가=저가)) 또는 (양봉 2개)
2020-12-21
864
글번호 144831
답변완료
시스템트레이딩 수식 부탁드립니다.
오늘도 수고에 감사드립니다.
아래 조건의 수식을 부탁드립니다.
1-1.매수식
INPUT : LENGTH(10);
VAR : TCHAN(0), BCHAN(0);
TCHAN = HIGHEST(HIGH, LENGTH)[1];
BCHAN = LOWEST(LOW, LENGTH)[1];
PLOT1(TCHAN, "TOP");
PLOT2(BCHAN, "BOT");
Price Channel 지표와 이평선은 5일이평선과 20일이평선을 이용한 매매입니다.
매수 진입조건
**순서가 중요합니다.
매수 진입시 마다 청산조건 : 1회 진입시 익절 목표값(30틱:외부변수) 1회 진입시 손절값(15틱:외부변수)
1.PLOT1(TCHAN, "TOP"); 평행하다 상승하기 시작할때
2.5일 이평선이 20일 이평선 하단에 있고
**켄들이 5일 이평선 아래에서
3.음봉 다음 양봉 시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 진입
4.진입이 성공하면 목표값(30틱:익절변수)에서 청산
5.진입이 실패하면 손절값(15틱:외부변수)에서 손절한 후 음봉 다음 양봉시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 재진입
6.재진입이 성공하면 목표값(30틱:익절변수)에서 청산
7.재진입이 실패하면 손절값(15틱:외부변수)에서 손절한 후 음봉 다음 양봉시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 재진입
8.재진입이 성공하면 목표값(30틱:익절변수)에서 청산
9.재진입이 실패하면 손절값(15틱:외부변수)에서 청산(**진입후 손절된 후 재진입은 2번까지만 허용)
1번에서 9번까지 과정을 반복함
하루 목표값(150틱:외부변수)에 도달하면 당일 거래 마감
하루 손절값(70틱:외부변수)에 도달하면 당일 거래 마감
1-2.매수식
INPUT : LENGTH(10);
VAR : TCHAN(0), BCHAN(0);
TCHAN = HIGHEST(HIGH, LENGTH)[1];
BCHAN = LOWEST(LOW, LENGTH)[1];
PLOT1(TCHAN, "TOP");
PLOT2(BCHAN, "BOT");
Price Channel 지표와 이평선은 5일이평선을 이용한 매매입니다.
매수 진입조건
**순서가 중요합니다.
매수 진입시 마다 청산조건 : 1회 진입시 익절 목표값(30틱:외부변수) 1회 진입시 손절값(15틱:외부변수)
1.PLOT1(TCHAN, "TOP"); 평행하다 상승하기 시작할때
2.켄들이 5일 이평선 아래에서
3.음봉 다음 양봉 시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 진입
4.진입이 성공하면 목표값(30틱:익절변수)에서 청산
5.진입이 실패하면 손절값(15틱:외부변수)에서 손절한 후 음봉 다음 양봉시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 재진입
6.재진입이 성공하면 목표값(30틱:익절변수)에서 청산
7.재진입이 실패하면 손절값(15틱:외부변수)에서 손절한 후 음봉 다음 양봉시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 재진입
8.재진입이 성공하면 목표값(30틱:익절변수)에서 청산
9.재진입이 실패하면 손절값(15틱:외부변수)에서 청산(**진입후 손절된 후 재진입은 2번까지만 허용)
1번에서 9번까지 과정을 반복함
하루 목표값(150틱:외부변수)에 도달하면 당일 거래 마감
하루 손절값(70틱:외부변수)에 도달하면 당일 거래 마감
2-1.매도식
INPUT : LENGTH(10);
VAR : TCHAN(0), BCHAN(0);
TCHAN = HIGHEST(HIGH, LENGTH)[1];
BCHAN = LOWEST(LOW, LENGTH)[1];
PLOT1(TCHAN, "TOP");
PLOT2(BCHAN, "BOT");
Price Channel 지표와 이평선은 5일이평선과 20일이평선을 이용한 매매입니다.
매도 진입조건
**순서가 중요합니다.
매도 진입시 마다 청산조건 : 1회 진입시 익절 목표값(30틱:외부변수) 1회 진입시 손절값(15틱:외부변수)
1.PLOT2(BCHAN, "BOT"); 평행하다 하락하기 시작할때
2.5일 이평선이 20일 이평선 상단에 있고
**켄들이 5일 이평선 위에서
3.양봉 다음 음봉 시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 진입
4.진입이 성공하면 목표값(30틱:외부변수)에서 청산
5.진입이 실패하면 손절값(15틱:외부변수)에서 손절한 후 양봉 다음 음봉시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 재진입
6.재진입이 성공하면 목표값(30틱:외부변수)에서 청산
7.재진입이 실패하면 손절값(15틱:외부변수)에서 손절한 후 양봉 다음 음봉시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 재진입
8.재진입이 성공하면 목표값(30틱:외부변수)에서 청산
9.재진입이 실패하면 손절값(15틱:외부변수)에서 청산(**진입후 손절된 후 재진입은 2번까지만 허용)
1번에서 9번까지 과정을 반복함
하루 목표값(150틱:외부변수)에 도달하면 당일 거래 마감
하루 손절값(70틱:외부변수)에 도달하면 당일 거래 마감
2-2.매도식
INPUT : LENGTH(10);
VAR : TCHAN(0), BCHAN(0);
TCHAN = HIGHEST(HIGH, LENGTH)[1];
BCHAN = LOWEST(LOW, LENGTH)[1];
PLOT1(TCHAN, "TOP");
PLOT2(BCHAN, "BOT");
Price Channel 지표와 이평선은 5일이평선을 이용한 매매입니다.
매도 진입조건
**순서가 중요합니다.
매도 진입시 마다 청산조건 : 1회 진입시 익절 목표값(30틱:외부변수) 1회 진입시 손절값(15틱:외부변수)
1.PLOT2(BCHAN, "BOT"); 평행하다 하락하기 시작할때
2.켄들이 5일 이평선 위에서
3.양봉 다음 음봉 시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 진입
4.진입이 성공하면 목표값(30틱:외부변수)에서 청산
5.진입이 실패하면 손절값(15틱:외부변수)에서 손절한 후 양봉 다음 음봉시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 재진입
6.재진입이 성공하면 목표값(30틱:외부변수)에서 청산
7.재진입이 실패하면 손절값(15틱:외부변수)에서 손절한 후 양봉 다음 음봉시가(양봉 시가 진입이 어려우면 최대한 시가에 근접하게 진입)에 재진입
8.재진입이 성공하면 목표값(30틱:외부변수)에서 청산
9.재진입이 실패하면 손절값(15틱:외부변수)에서 청산(**진입후 손절된 후 재진입은 2번까지만 허용)
1번에서 9번까지 과정을 반복함
하루 목표값(150틱:외부변수)에 도달하면 당일 거래 마감
하루 손절값(70틱:외부변수)에 도달하면 당일 거래 마감
2020-12-22
847
글번호 144830
답변완료
수식부탁드립니다.
안녕하세요. 업무에 노고가 많으십니다.
이격도를 활용하여 종목검색을 하고 싶습니다.
[조건]
1)일봉기준
2)20일 평균 이격도가 120~125(일봉 중 고가기준)을 찍고 103~105(종가기준)로 내려온 종목
부탁드립니다.
감사합니다.
2020-12-21
925
글번호 144825
답변완료
청산시, 신호-실제보유 수량차이시 미청산
청산시, 신호상의 수량과 실제보유 수량차이시 미청산되는 현상이 있는것 같네요.
실제보유 수량(이전매수신호에서 체결수량이 50%정도만 체결되었거나) < 차트 신호상의 청산수량
일 경우
"[01221] 매도가능수량이 부족합니다..31주 매도가능"
위와 같은 주문메시지가 나오며 청산주문 자체가 나오지 않네요. (Trailing stop 주문이었음)
계좌상 해당종목을 전량 청산하고 싶은데 어떻게 수정하면될까요.
//------------작성된 청산주문 YL--------------
if MarketPosition == 1 and MoneyFlow >= SPercent Then
{
ExitLong("bx",OnClose,def,"",min(CurrentContracts, Ceiling(MaxContracts*0.1)),2);
}
SetStopLoss(손절선,PercentStop);
SetStopTrailing(TS감소율,TS수익률,PercentStop,0);
SetStopInactivity (TS수익률, inactive봉 , PercentStop) ;
//-----------------------------------------
2020-12-21
921
글번호 144822
답변완료
문의드립니다.
선물차트 기준으로 문의드립니다.
- 단순이평 90선과 티론중간선(기간값 150) 사이를 채우기하고자 합니다.
수식을 어떻게 작성해야 하는지요? 부탁드립니다.
단순이평과 티론의 기간값은 변경가능하게 부탁드립니다. 수고하세요!!!
2020-12-21
741
글번호 144821
답변완료
수식 추가 부탁드립니다.
안녕하세요?
아래의 수식에서 이동평균선을 추가하고싶습니다.
1) 이동평균선 2개
2) 정배열에서 매도, 역배열에서 매수
부탁드립니다.
감사합니다.
input : 익절틱수(50),손절틱수(50),n(3);
var : entry(0);
if bdate != Bdate[1] Then
entry = 0;
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
if MarketPosition == 0 and
entry < n and
C[2] > O[2] and
C[1] < O[1] and
C > O Then
Buy();
if MarketPosition == 0 and
entry < n and
C[2] < O[2] and
C[1] > O[1] and
C < O Then
Sell();
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
2020-12-21
689
글번호 144820
답변완료
문의
청산로직에 대해서 궁금한 것이 있습니다.
//1개 봉 전을 기준으로 3개 봉 중 최저가를 stop 변수에 저장
stop = Lowest(L[1],3);
//롱 포지션일 시 7포인트(28틱)가 오르면 익절청산
If MarketPosition == 1 Then
SetStopProfittarget(7, PointStop);
//stop가격까지 가격이 떨어지면 손절청산
If MarketPosition == 1 && stop > C Then
ExitLong();
위의 식에서 문제는
현재 봉에서 조건이 만족되면 다음 봉 시가에서 청산이 일어난다는 것입니다.
저는 기준이 만족하면 그 즉시 해당 봉에서 청산을 하고 싶습니다.
예를 들어서, 7포인트가 오르면 바로 익절청산,
가격이 stop가격까지 내려가면 바로 손절청산.
다음 봉 시가에서 청산이 일어나면 너무 손해가 큰 문제가 있어서요,,
혹시 바로 청산하는 방법은 없을까요?
2020-12-20
696
글번호 144819
답변완료
부탁들여요
input : 기간 (1),n(1),k(0),percent(5),percent1(10);
var :count(0),count1(0),count2(0),count3(0),DINDEX(0),LL(0),LL1(0), HL1(0),HL2(0),HL3(0),HL4(0);
LL = Lowest(DayLow,기간 );
if bdate != bdate[1] then
{
DINDEX = DINDEX+1 ;
LL = DayLow;
LL1= DayHigh;
}
if DINDEX <= 1 then
{ LL = LL[0];
LL1 = LL1[0];
for count = 0 to 기간 -1
if dayLow(count) > LL[1] then
LL = dayLow(count );
}
var1 = Lowest(LL[2] , 기간 );
var2 = Lowest( LL[1] , 기간 );
HL1= Var1 - Var1 * percent /100;
HL2= Var1 - Var1 * percent1 /100;
HL3= Var2 - Var2 * percent /100;
HL4= Var2 - Var2 * percent1 /100;
Condition1 = (DayOpen[3] > DayClose[3]or DayOpen[3] < DayClose[3]) and DayOpen[2] > DayClose[2]
and DayLow [3] > DayLow [2] and DayLow [2] < DayLow [1] and (DayOpen[1] < DayClose[1]or DayOpen[1] > DayClose[1])
and( DayOpen < DayClose or DayClose > DayLow [2] or DayHigh[2] < DayHigh);
Condition2 = DayOpen[2] > DayClose[2] and DayLow [2] >= DayLow [1] and DayOpen[1] < DayClose[1]
and DayLow[1] < DayLow and DayLow[1] < DayClose ;
if Condition1 Then
Begin
var3 = HL1;
var4 = HL2 ;
End
Else
if Condition2 Then
Begin
var3 = HL3;
var4 = HL4;
end;
Plot1 ( var3 [n]);
Plot2 ( var4 [n]);
예휴 ~~ 왕초보입니다,
일봉에서 사용중입니다 분봉에서도 같은 가격에 선이 그려지도록 부탁 들입니다
일봉 ---> 분봉
60분봉 --> 10 분봉 으로도 부탁들입니다 수고하세요^^
2020-12-20
709
글번호 144818
2wnwn 님에 의해서 삭제되었습니다.
2020-12-21
9
글번호 144817