커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8195
글번호 230811
답변완료
지표문의합니다
지표 binarywaveMACD에서 시그널 9값과 binarywaveMACD 12,26값의 차이를 표현하고 십습니다.
만약 시그널 9 : 3.91이고 binarywaveMACD 12,26 : 1.11이면 3.91 - 1.11의 값을 지표로 표현하고 십습니다.
2014-07-15
196
글번호 76759
답변완료
수식 재질문
아래 답변 감사드립니다.
그런데 제가 의도한 것과 좀 달라서 다시 한번 부탁드립니다.
아래의 주신 답에서는 37072 질문 시 포함되었던 H==HighD(0) 인 경우의 조건이 생략되었습니다. 따라서 최고가를 찍은 봉(양봉 또는 음봉) 다음부터는 양봉이 생기더라도 지표는 바뀌면 안되는데 현재 식으로는 다음에 양봉이 생기면 값이 바뀌어버립니다.
이 점을 감안하여 수고스럽지만 다시 한번 부탁드립니다.
안녕하세요
예스스탁입니다.
input : N(2);
var : cnt(0),count(0),Lcnt(0),cnt1(0),cnt2(0),tempmax(0),tempIndex(0);
Array : LL[200](0),LLL[200](0), NTHVALUE[54](0);
if date != date[1] Then{
for cnt = 0 to 199{
LL[cnt] = 0;
LLL[cnt] = 0;
}
Lcnt = 0;
}
if C > O Then{
count = 0;
for cnt = 0 to Lcnt {
if L == LL[cnt] Then
count = count+1;
}
if count == 0 Then{
Lcnt = Lcnt+1;
LL[Lcnt] = L;
}
}
if C > O Then
var2 = L;
For cnt = 1 to Lcnt
{
if LL[cnt] <= var2 Then
LLL[cnt] = LL[cnt];
Else
LLL[cnt] = 0;
}
For cnt1 = 1 to Lcnt
{
tempmax = 0;
For cnt2 = 1 to Lcnt
{
if LLL[cnt2] > tempmax then
{
tempmax = LLL[cnt2];
tempIndex = cnt2;
}
}
NTHVALUE[cnt1] = tempmax;
LLL[tempIndex] = 0;
}
//[]안에 순위 지정하시면 됩니다
plot1(NTHVALUE[1],"1번째높은");
plot2(NTHVALUE[2],"2번째높은");
plot3(NTHVALUE[3],"3번째높은");
지정한 순위가 없으면 0 리턴됩니다.
즐거운 하루되세요
> 쉬어가자 님이 쓴 글입니다.
> 제목 : 수식문의
> 답변 감사드립니다.
어제 답변 주신 37072번 <질문1> 관련 질문입니다.
질문1.
<어제질문>
H==highD(0) 이면 현재봉을 포함한 그 이전 봉 중에서 양봉이면서 저가가 N번째(음봉의 저가는 무시)로 낮은 봉의 저가를 표시하는 식
<수정 질문>
H==highD(0) 이면 현재봉을 포함한 그 이전 봉 중에서 양봉이면서 저가가 N번째(음봉의 저가는 무시)로 높은 < 어제의 "낮은"을 "높은"으로 수정 > 봉의 저가를 표시하는 식에서
........ 다음의 조건을 추가한 지표를 부탁드립니다.
단, H==HighD(0)인 봉을 포함한 왼쪽의 양봉 중에서
가장 가까운 양봉의 저가보다 높은 저가를 가진 양봉의 저가는 무시합니다.
(참조): 2분봉, 20140714, stime 11:18분봉(HighD(0) 형성) 기준으로....
이 경우, 1번째로 가장 높은 양봉의 저가는 259.40, 2번째로 높은 양봉의 저가는 259.35 입니다.
감사합니다.
2014-07-15
217
글번호 76758
태양같이 님에 의해서 삭제되었습니다.
2014-07-15
7
글번호 76757
답변완료
문의
1
차트 초기설정에 봉갯수를 입력하면(가령 100개)
그 뒤에 봉이 하나씩 추가됩니다
차트에 봉갯수가 항상 일정하게 유지되려면(항상 100개) 어떻게 설정해야 합니까??
2
당일 봉만 차트에 나오게 하려면 어디서 설정해야 합니까??
2014-07-15
171
글번호 76748
gagamel 님에 의해서 삭제되었습니다.
2014-07-15
0
글번호 76747
답변완료
수식 문의 드립니다.
갭보정한 피봇 분봉에서 각 지지와 저항을 상향 돌파하면 매수, 하향 돌파하면 매도
수식 부탁드립니다.
2014-07-15
175
글번호 76745
답변완료
문의드립니다.
국내 장에서는 시스템이 제대로 작동되는데 해외 장에서는 시스템이 작동되지 않네요
무슨 문제일까요??
항상 감사합니다.
var : T1(0),T2(0);
var : X(0),W(0),cnt(0),count(0),NP(0),PreNP(0),dayPL(0);
input : dayentry(4),당일손실(-1.4),loss(100),Profit(100);
count = 0;
for cnt = 0 to 20{
if sdate == EntryDate(cnt) Then
count = count+1;
}
NP = NetProfit;
if date != date[1] Then{
Condition1 = False;
PreNP = NP[1];
}
dayPL = (NP-PreNP)+PositionProfit;
X = min(T1,T2);
W = iff(T5[1]<T5,X,T5);
if Condition1 == false and T1 > W and T1[1] <= W[1] and dayindex > 0 Then
Condition1 = true;
if Condition1 == false and T1 <= W and T1[1] > W[1] and dayindex > 0 Then
Condition1 = true;
if count < dayentry and dayPL > 당일손실 Then{
if T1 > W and dayindex > 0 and Condition1 == true Then{
if count == 0 or
(count >= 1 and MarketPosition == -1) Or
(Count >= 1 and MarketPosition == 0 and MarketPosition(1) != 1) Then{
buy();
}
}
if T1 <= W and dayindex > 0 and Condition1 == true then {
if count == 0 or
(count >= 1 and MarketPosition == 1) Or
(Count >= 1 and MarketPosition == 0 and MarketPosition(1) != -1) Then{
sell();
}
}
}
SetStopProfittarget(Profit,PointStop);
SetStopLoss(loss,PointStop);
// SetStopEndofday(150000);
if MarketPosition == 1 and T1 <= W Then
ExitLong("daybx2",Atstop,EntryPrice+(당일손실-DayPL));
if MarketPosition == -1 and T1 > W Then
ExitShort("daysx2",Atstop,EntryPrice-(당일손실-DayPL));
if MarketPosition == 1 and T1 <= W Then
ExitLong();
if MarketPosition == -1 and T1 > W Then
ExitShort();
2014-07-15
236
글번호 76741
답변완료
감사합니다
var1 = (3 * Ema(c,1)) - (3 * Ema(Ema(c,1),1)) +
(Ema(Ema(Ema(c,33),33),33));
var2 = (3 * Ema(c,50)) - (3 * Ema(Ema(c,50),50)) +
(Ema(Ema(Ema(c,50),50),50));
#골드구간의 최고가
if crossup(var1,var2) Then
value1 = H;
if var1 > var2 and H > value1 Then
value1 = H;
#데드구간의 최저가
if CrossDown(var1,var2) Then
value2 = L;
if var1 < var2 and L < value2 Then
value2 = L;
#골드구간일때
if var1 > var2 Then
plot1(value2,"지표",RED);#직전데드구간의 최저가를 표시
Else //골드구간이 아닐때(데드구간)
plot1(value1,"지표",BLUE);#직전골드구간의 최고가 표시
위의 식에서
1.현재가가 value2보다 작으면 매도,value1보다 크면 매수
2.현재가가 바로앞에 발생한 value2/value1값보다 작거나 크면 매도/매수
(바로앞이란 직전에 발생된 value2/value1값만 의미하는 것입니다)
(직직전은 아닙니다)
3.위의 1과2는 당일에 발생된 value2/value1값만 적용합니다
추가로
3.현재가가 진입봉의 최저가보다 작으면 매수청산
4.현재가가 진입봉의 최고가보다 크면 매도청산
감사합니다
2014-07-15
183
글번호 76736
logos 님에 의해서 삭제되었습니다.
2014-07-15
0
글번호 76732