커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8106
글번호 230811
답변완료
수정 부탁드립니다
안녕하십니까?
1. 방향(1)지우고 Period 값으로 상승시 Period 값 고가 돌파하면 상승 방향 전환되고,
하락시 Period 값 저가 이탈하면 하락챠트가 만들어지도 부탁드립니다.
( 아래 것은 첫봉 기준으로 등분되는 것을 Period 값 고가 저가 기준으로
등분되도록 부탁드립니다. )
#==========================================#
# 지 표 명 : 피보나치 되돌림비율
# 작 성 자 : 수식지왕
# 블 로 그 : http://yahoosir.blog.me
#==========================================#
Var:방향(1),Period(20);
Var:j(0),k(0),고(0),저(0),고Bar(0),저Bar(0);
Array:r[8](0),fr[8](0);
#==============================================================================#
# 초기처리 (Initialize Routine)
#==============================================================================#
r[0] = 0.;
r[1] = 0.236;
r[2] = 0.382;
r[3] = 0.5;
r[4] = 0.618;
r[5] = 0.764;
r[6] = 1;
r[7] = 1.25;
#==============================================================================#
# 메인처리 (Main Routine)
#==============================================================================#
고Bar = 고Bar + 1;
저Bar = 저Bar + 1;
#=========================================================#
# 상승방향
#=========================================================#
If 방향 >= 1 Then
{
#---------------------------------------------------------#
# 최고/최저점 계산
#---------------------------------------------------------#
if H==Highest(H, Period) then
{
고 = H;
고Bar = 0;
}
if L==Lowest(L, Period) then
{
저 = L;
저Bar = 0;
}
#---------------------------------------------------------#
# Fibonacci Retracements 계산
#---------------------------------------------------------#
k = Highest(H,저Bar+1);
for j = 0 to 7
{
fr[j] = 저 + ((k - 저) * r[j]);
}
}
#=========================================================#
# 하락방향
#=========================================================#
Else
{
#---------------------------------------------------------#
# 최고/최저점 계산
#---------------------------------------------------------#
if H==Highest(H, Period) then
{
고 = H;
고Bar = 0;
}
if L==Lowest(L, Period) then
{
저 = L;
저Bar = 0;
}
#---------------------------------------------------------#
# Fibonacci Retracements 계산
#---------------------------------------------------------#
k = Lowest(L,고Bar+1);
for j = 0 to 7 {
fr[j] = 고 - ((고 - k) * r[j]);
}
}
#==============================================================================#
# 지표출력
#==============================================================================#
Plot1(fr[0], "0%",Iff(방향>=0,BLACK,LBLUE));
Plot2(fr[1], "24%",Iff(방향>=0,BLACK,LGREEN));
Plot3(fr[2], "38%",Iff(방향>=0,BLACK,LCYAN));
Plot4(fr[3], "50%",Iff(방향>=0,BLACK,PINK));
Plot5(fr[4], "62%",Iff(방향>=0,BLACK,LMAGENTA));
Plot6(fr[5][1], "76%",Iff(방향>=0,BLACK,LYELLOW));
Plot7(fr[6],"100%",Iff(방향>=0,BLACK,BWHITE));
Plot8(fr[7],"123%",Iff(방향>=0,BLACK,BWHITE));
2018-06-02
431
글번호 119409
답변완료
4등분선 수식이 궁금합니다.
수고많으십니다.
완전초보다 보니...
4등분선 수식이 궁금합니다.
quadrant lines이 있긴한데
고점 저점을 제임의로 옮길수가 없더군요
고점 저점 자동으로 잡는것 하고 수동으로 고점 저점 잡는 수식이 필요합니다.
도움주시면 감사하겠습니다.
2018-06-01
359
글번호 119408
답변완료
질문드립니다.
어제 답변을 보니 종목검색에서는 최초첫봉은 계산되지 않는다하셨는데요
종목검색에서 최초첫봉의 데이터도 같이계산하여 그결과를 검색하고싶은경우
if(index==1)then{
h[1] ~~~~
c[1] ~~~
}
위와같이 두번째봉에서 전봉의 데이터를 가져오는 방식으로 코딩해서 종목검색식을 돌리면 적용이제대로되는지궁금합니다
또 왜 종목검색에서만 첫봉은 계산범주에 벗어나는지궁그합니다
////////////////////어제 답변
안녕하세요
예스스탁입니다.
설명을 충분히 못해드렸습니다.
언급하신 내용이 맞습니다.
종목검색에 최초 첫봉은 계산이 되지 않고
두번째 봉부터 되므로 두번째 봉부터 계산하게 지표를 작성해 드렸습니다.
즐거운 하루되세요
2018-06-01
278
글번호 119407
답변완료
수식작성 요청 드립니다.
안녕하세요?
수고 하십니다. 수식작성 도움요청 드립니다.
**진입조건
1. 몸통길이가 (변수)틱인 음봉매도 (설정변수와 같은것)
2. 몸통길이가 (변수)틱인 양봉 매수(설정변수와 같은것)
** 재진입조건
1. 청산후 매도,매수중 먼저나오는데로 재진입
** 청산조건
1. 손절 (변수)
2. 익절 (변수)
**기타사항
괄호안에 있는 (변수)는 모두 input 변수로 처리를하여 시스템 트레이딩 설정창의 변수탭에서
수정하실수 있게 부탁드립니다.
감사합니다. 수고하세요.
2018-06-01
271
글번호 119406
답변완료
수정요청
안녕하세요? 답변해주셔서 감사합니다
아래 내용을 문의하여 답변을 받았고, 수정이 필요하여 다시 요청 드립니다.
**수정**
몸통길이가 설정된 변수와 같은것(같거나 크거나, 같거나 작은것이 아님)
감사합니다.
----------------------------------------------------------------------------------------
안녕하세요
예스스탁입니다.
input : 몸통틱수(10),손절틱수(10),익절틱수(10);
if C >= O+PriceScale*몸통틱수 Then
buy();
if C <= O-PriceScale*몸통틱수 Then
sell();
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
즐거운 하루되세요
> 대구어린울프 님이 쓴 글입니다.
> 제목 : 수식작성 부탁드립니다.
> 수고하십니다. 오랜만에 문의글 남기네요.
간단한 수식작성 부탁드리겠습니다.
* 진입조건
1. 몸통 길이가 (변수)틱인 음봉매도
2. 몸통 길이가 (변수)틱인 양봉 매수
* 청산조건
1. 손절 (변수)p
2. 익절 (변수)p
계속 반복매매.
ps : 변수로 입력할수있게 해주세요.
진입시 꼬리가아닌 몸통길이만으로 인식해야합니다.
진입시 분봉이 아닌 틱으로 해야합니다.
이상입니다.
잘부탁드리겠습니다.
감사합니다.
2018-05-31
281
글번호 119405
답변완료
투자금 100퍼센트 투입
초기투자금이 100만원일 때 100만원 한도 내에서 물량을 최대치로 사고 싶구요
만약 손실이 -5만원 되어 투자금이 95만원이 되었다면
95만원에서 물량을 최대치로 사고 싶구요
+20만원 이익이 생겨 115만원이 되었을 때
115만원에서의 최대 물량을 사고 싶습니다.
시스템식에 어떤 식을 첨부하면 될까요?
이평선 골든크로스시에 진입
이평선 데드크로스에 청산
이 전략으로 예를 들어 설명 부탁 드립니다.
2018-05-31
287
글번호 119404
답변완료
문의 드립니다.
아래식 수정 부탁합니다.
정확하게 매도쪽에 피라미딩 신호가 적용되지가 않습니다,
또한, 매 진입단가별로 +1.0 수익에서 익절하는 식은 어떻게 하는지요..?
감사합니다.
var1 = ma(C,20);
# 매도/매수 1회로 제한
var : count(0),cnt(0);
count = 0;
for cnt = 0 to 20{
if sdate == EntryDate(cnt) Then
count = count+1;
}
if count < 1 and stime >= 100000 and stime < 153000 and crossup(c,var1) Then
buy();
//진입신호 바로 다음봉에서 가격조건만족시 신호발생을 위한 매수함수
buy("b1",AtStop,c+0.3,1);
buy("b2",AtStop,c+0.5,1);
if MarketPosition == 1 Then{
ExitLong("bx",atlimit,AvgEntryPrice+1.0);
//진입신호 다음다음봉부터 가격조건만족시 신호발생을 위한 매수함수
if highest(H,BarsSinceEntry) < EntryPrice+0.3 Then
buy("b1.",AtStop,EntryPrice+0.3,1);
if highest(H,BarsSinceEntry) < EntryPrice+0.5 Then
buy("b2.",AtStop,EntryPrice+0.5,1);
if count < 1 and stime >= 100000 and stime < 153000 and CrossDown(c,var1) Then
sell();
//진입신호 바로 다음봉에서 가격조건만족시 신호발생을 위한 매도함수
sell("s1",AtStop,c-0.3,1);
sell("s2",AtStop,c-0.5,1);
if MarketPosition == -1 Then{
ExitShort("sx",AtLimit,AvgEntryPrice-1.0);
//진입신호 다음다음봉부터 가격조건만족시 신호발생을 위한 매도함수
if Lowest(L,BarsSinceEntry) > EntryPrice-0.3 then
sell("s1.",AtStop,EntryPrice-0.3,1);
if Lowest(L,BarsSinceEntry) > EntryPrice-0.5 then
sell("s2.",AtStop,EntryPrice-0.5,1);
}}
//0.3 0.5에 한개씩 파라미딩...평균진입가 +1.0에서 청산
2018-05-31
278
글번호 119403
답변완료
수식 문의드립니다.
안녕하세요
Buy('A',Atmarket) 로 매수 진입 후,
아래와 같이 MaxEntries 를 사용해서 지속적으로 진입하고 있습니다.
If MaxEntries == 1 and stok < 20
Then
Buy("B",Atlimit);
..
.
총 10회 진입!
혹시 당일에 한하여 진입 횟수를 3회로 제한하고 싶은데...
어떻게 수식을 작성해야 할까요?
항상 감사드립니다.
2018-05-31
288
글번호 119402
이엘성투 님에 의해서 삭제되었습니다.
2018-05-31
0
글번호 119401