커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8145
글번호 230811
답변완료
문의드립니다
TL_Delete(var1);
if C > O Then
{
var1 = TL_New(sdate[1],stime[1],h,sdate,stime,h);
TL_SetColor(var1,BLUE);
TL_SetSize(var1,2);
}
if C < O Then
{
var1 = TL_New(sdate[1],stime[1],l,sdate,stime,l);
TL_SetColor(var1,MAGENTA);
TL_SetSize(var1,2);
}
TL_SetExtRight(var1,True);
TL_SetExtLeft(var1,True);
매번감사드립니다 ~~위수식으로 강조식을 하고십습니다 부탁드립니다
2019-01-31
203
글번호 125801
답변완료
문의드립니다.
1. 기타
이거 사용자 함수로 만들어 주실 수 있나요?
변동계수
https://terms.naver.com/entry.nhn?docId=293901&cid=60262&categoryId=60262
2019-01-31
286
글번호 125797
답변완료
항생진폭
안녕하세요?
아래의 수식은 항생진폭을 계산하는 수식입니다,
질문 : 항생진폭(당일고가-당일저가)을 계산하는 함수를 추가하여 주시기 바랍니다,
즉 한국시간 10:15분부터 17:30까지 계산된 진폭이 출력되도록 추가 부탁드립니다.
var : TX(0), TX1(0);
Var80 = dayhigh()-daylow();
Text_Delete(tx);
tx = Text_New(sdate,stime,C-PriceScale*240,NumToStr(var80,2));
Text_Delete(tx1);
tx1 = Text_New(sdate,stime,C+PriceScale*240,NumToStr(var80,2));
2019-01-31
218
글번호 125795
번성 님에 의해서 삭제되었습니다.
2019-02-01
18
글번호 125786
답변완료
문의 드립니다.
안녕하세요
아래 파동식에서 파동의 고점과 저점이 확정이 되고
정해진후 캔들의 종가가 파동의 고점을 상향 돌파 또는
파동의 저점을 하향 돌파 할 때 소리가 나게 부탁드립니다.
감사합니다.
input:length(6);
Var:j(0),jj(0),HH(0),LL(0),최종고가(0),최종저가(0),최종꼭지점(""),처리구분(""),
TL1(0),Text1(0),TL2(0),TL3(0),TL4(0),TL5(0),TL12(0),TL13(0),TL14(0),TL15(0),T(0);
Array:고[10,4](0),저[10,4](0); // 1:가격,2:Index,3:sDate,4:sTime
#==========================================#
HH = IFF(0==1,C,H);
LL = IFF(0==1,C,L);
If Index == 0 Then
{
고[1,1] = HH;
저[1,1] = LL;
}
Condition1 = Highest(HH,length) == HH and 최종고가 <> HH;
Condition2 = Lowest (LL,length) == LL and 최종저가 <> LL;
처리구분 = "";
If Condition1 and Condition2 Then // 기간고점과 기간저점 동시 발생
{
If 최종꼭지점 == "저점" Then
{
If 저[1,1] > LL Then 처리구분 = "저점처리";
Else 처리구분 = "고점처리";
}
Else If 최종꼭지점 == "고점" Then
{
If 고[1,1] < HH Then 처리구분 = "고점처리";
Else 처리구분 = "저점처리";
}
}
Else If Condition1 Then 처리구분 = "고점처리";
Else If Condition2 Then 처리구분 = "저점처리";
#==========================================#
If 처리구분 == "고점처리" Then
{
T = 1;
최종고가 = HH; // 신규고점을 체크하기 위해 저장
If 최종꼭지점 == "저점" Then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
고[j,jj] = 고[j-1,jj];
}
}
고[1,1] = HH;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
TL_SetSize(TL1,1);
TL_SetColor(TL1,white);
}
Else If 고[1,1] < HH Then // 1번 고점보다 높은 고가 출현
{
고[1,1] = HH;
고[1,2] = Index;
고[1,3] = sDate;
고[1,4] = sTime;
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
// 시작점은 변동없고 끝점의 위치가 현재 봉으로 연장된 것임
}
최종꼭지점 = "고점";
}
#==========================================#
If 처리구분 == "저점처리" Then
{
T = -1;
최종저가 = LL;
If 최종꼭지점 == "고점" then
{
For j = 10 DownTo 2
{
For jj = 1 To 4
{
저[j,jj] = 저[j-1,jj];
}
}
저[1,1] = LL;
저[1,2] = Index;
저[1,3] = sDate;
저[1,4] = sTime;
TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
TL_SetSize(TL1,1);
TL_SetColor(TL1,white);
}
Else If 저[1,1] > LL then
{
저[1,1] = LL;
저[1,2] = Index;
저[1,3] = sDate;
저[1,4] = sTime;
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
}
최종꼭지점 = "저점";
}
2019-01-31
234
글번호 125785
회원 님에 의해서 삭제되었습니다.
2019-01-31
27
글번호 125784
답변완료
지표를 시스템으로 변경 문의 입니다.
안녕하세요 아래와 지표 2개를 사용하여 시스템을 만들려고 하는데
지표 1,2 가 동시에 상승할때 매수
지표 1,2 가 동시에 하락할때 매도로 구현이 가능한가요 ?
지표1
Input : short(6), longPeriod(26);
Var : value(0);
value = MACD(short, longPeriod);
if value > value[1] Then
plot1(value,"macd",YELLOW);
Else
plot1(value,"macd",CYAN);
지표2
Input : shortPeriod(12), longPeriod(26), Period(9);
Var : value(0) , macdosc(0), MACD전저점(0), 가격전저점(0), 예비저(0), 예비봉저(999), macdplot(0),
macd전고점(0), 가격전고점(0), 예비고(0), 예비봉고(0);
value = MACD(shortPeriod, longPeriod);
macdosc = value-ema(value,Period);
if macdosc > 0 then
{
plot3(macdosc * 2, "MACDOscillator", RED);
if(macdosc[1] <= 0) then
{ // 이전 봉 까지는 음수인 경우 전저점이 확정된다.
// 다이버전스 조건이 충족 되었는지 검증한다.
if(macd전저점 <= -0.01 ) and (macd전저점 <= 예비저) and (가격전저점 >= 예비봉저) then
{
macdPlot = macd전저점 * -1;
MessageLog("macd전저점 %.0f 가격전저점%.0f 예비저%.0f 예비봉저%.0f 다이버젼스 발견", macd전저점, 가격전저점, 예비저, 예비봉저);
}
else
macdPlot = 0;
if(예비저 <= -0.01) then
{
macd전저점 = 예비저;
가격전저점 = 예비봉저;
}
}
else
{
macdPlot = 0;
}
예비저 = 0;
예비봉저 = 999;
if(예비고 < macdosc) then
{
예비고 = macdosc;
}
예비봉고 = max(예비봉고, c);
}
else
{
Plot3(macdosc * 2, "MACDOscillator", BLUE);
macdPlot = 0;
if(예비저 > macdosc) then
{
예비저 = macdosc;
}
if(macdosc[1] >= 0) then
{ // 이전 봉 까지는 양수인 경우 전고점이 확정된다.
// 다이버전스 조건이 충족 되었는지 검증한다.
if(macd전고점 >= 0.01 ) and (macd전고점 > 예비고) and (가격전고점 <= 예비봉고) then
{
macdPlot = macd전고점 * -1;
MessageLog("macd전고점 %.0f 가격전고점%.0f 예비고%.0f 예비봉고%.0f 다이버젼스 발견", macd전고점, 가격전고점, 예비고, 예비봉고);
}
else
macdPlot = 0;
if(예비고 >= 0.01) then
{
macd전고점 = 예비고;
가격전고점 = 예비봉고;
}
}
else
{
macdPlot = 0;
}
예비고 = 0;
예비봉고 = 0;
예비봉저 = min(예비봉저, c);
}
PlotBaseLine1(0, "기준선1");
plot1(macdPlot);
//MessageLog("macd전저점 %.0f 가격전저점%.0f 예비저%.0f 예비봉저%.0f", macd전저점, 가격전저점, 예비저, 예비봉저);
2019-01-31
253
글번호 125783
답변완료
봉완성전
봉완성전에 다른값을 그리다가
봉완성이 되면 또다른값으로 그리고 싶은데
가능한가요 ?
2019-01-31
218
글번호 125782
답변완료
처음으로 수식작성 문의드립니다.
1월에 하이투자 교대에서 교육받고 열심히 예스랭귀지 셀프 스터디하고 있습니다...^^
현재까지의 지식으로 도저히 방법이 나오지 않아 문의드립니다.
ETF 부터 시작하기 위해 무조건 매수-매도 시스템을 구상중입니다.
생각하는 조건 중 매수 조건은 가격을 가지고 어찌어찌 만들었습니다만....매도 조건을 수식화하기 어렵습니다.
매수한 이후....
1. 연속하여 나오는 첫 번째 음봉의 종가에서 매도하기
ex) 양봉(1, 매수) - 양봉(2) - 양봉(3) - 음봉(4, 매도)
2. 연속하여 나오는 두 번째 음봉의 종가에서 매도하기
ex) 양봉(1, 매수) - 양봉(2) - 음봉(3) - 양봉(4) - 음봉(5, 매도)
3. 연속하여 나오는 세 번째 음봉의 종가에서 매도하기
ex) 양봉(1, 매수) - 양봉(2) - 음봉(3) - 양봉(4) - 음봉(5) - 음봉(6, 매도)
시가=종가인 도지봉은 양봉으로 간주하시면 됩니다.
이런 식으로 음봉의 종가에서 매도하는 수식 작성 문의드립니다...^^
미리 감사드립니다.
2019-01-30
283
글번호 125781