커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3744
글번호 230811
답변완료
어떻게 해야 하나요???
●●●선생님 수고많으십니다. 초보라 상세하게 구체적으로 부탁드립니다.
1.선언되지 않은 이름 ‘ChgRateZigZag’이 사용되었습니다.
2.선언되지 않은 이름 ‘IndiDivergence’이 사용되었습니다.
3.선언되지 않은 이름 ‘paintBar’이 사용되었습니다.
4.PlotPaintBar’는 ‘paintBar’에서만 쓸 수 있습니다.
오류가 떠는데 어떻게 해결할 수 있는지 부탁드립니다.
●●●그리고 소리지정시 띵띵 소리를 매수 혹은 매도 소리로 바꿀려면 어떻게 해야하는지도 상세하게 구체적으로 부탁드립니다. 정말 감사합니다.
2019-07-02
343
글번호 129955
답변완료
수식 문의드립니다.
안녕하세요.
수식문의 드립니다.
아래 조건으로 차트에 선으로 표현이 가능하도록 부탁드립니다.
* 1개월 전의 시가, 고가, 저가, 중심가
* 당월의 시가, 고가, 저가, 중심가
* 4주전의 시가 ,고가, 저가, 중심가
* 3주전의 시가, 고가, 저가, 중심가
* 2주전의 시가, 고가, 저가, 중심가
* 1주전의 시가, 고가, 저가, 중심가
* 이번 주의 시가 고가 저가 중심가
도움에 항상 감사드립니다.
2019-07-02
254
글번호 129954
답변완료
많이 걸려있는 호가를 표시하는 지표
매수 매도 호가(위아래10개)중에 제일 많이 걸려있는 호가를 표시해주는 수식이 있나요
2019-07-02
259
글번호 129953
답변완료
문의
1.
위 차트와 같이 조건식을 넣어서 선 두 개를 그리고 두 선 사이에 색깔을 넣을 경우
현재 해당 공간과 직전 해당 공간 사이에 색깔 연결 띠가 연결됩니다
이 연결띠를 제거시키는 수식이 있을까요?
예를들면
수식의 적용을 당일로 제한시켜서 당일 색깔공간과 전일 색깔 공간을 차단시키는 수식
수식의 적용을 시간 단위로 제한시켜서 색깔공간 연결을 시간 단위로 차단시키는 수식
수식의 적용을 30분 단위로 제한시켜서 색깔공간 연결을 시간 단위로 차단시키는 수식
2.
당일 고가와 당일 저가의 진폭이 1.0 을 넘을 경우
당일 고가 위에 당일 고가를 표시하고 그 위에 당일 고가와 당일 저가 진폭을 표시한다
당일 저가 아래 당일 저가를 표시하고 그 아래 당일 고가와 당일 저가 진폭을 표시한다
2019-07-02
296
글번호 129952
답변완료
문의드립니다
Input:length(5);
Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),TL2(0),TL3(0),Text1(0),처리구분(""),
TL_Val1(0),TL_Val2(0);
Var:TL11(0),TL12(0),TL13(0),TL14(0),TL15(0),TL16(0),TL17(0),TL18(0),TL19(0),TL20(0),tx(0);
Var:TL21(0),TL22(0),TL23(0),TL24(0),TL25(0),TL26(0),TL27(0),TL28(0),TL29(0),TL30(0),mav(0),T(0);
Array:고점[10,2](0),저점[10,2](0);
처리구분 = "";
If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then
{ If 저점[1,1] > L Then 처리구분 = "저점처리";
If 고점[1,1] < H Then 처리구분 = "고점처리";
}
Else If Highest(H,length) == H and lastHiVal <> H Then 처리구분 = "고점처리";
Else If Lowest(L,length) == L and lastLoVal <> L Then 처리구분 = "저점처리";
If 처리구분 == "고점처리" Then
{
lastHiVal = H;
If 고점[1,2] < 저점[1,2] Then
{
For j = 10 DownTo 2
{
고점[j,1] = 고점[j-1,1];
고점[j,2] = 고점[j-1,2];
}
}
If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then
{
고점[1,1] = H;
고점[1,2] = Index;
sBar = Index - 저점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
TL_Delete(TL11);
Text_Delete(Text1);
If 고점[3,1][1] < 고점[2,1][1] and 고점[2,1][1] > 고점[1,1][1] and 저점[2,1][1] < 저점[1,1][1] Then
TL_Delete(TL2);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],sDate[eBar],sTime[eBar],고점[1,1]);
// TL11 = TL_New(sDate[index-고점[2,2]],sTime[index-고점[2,2]],c[index-고점[2,2]],sDate[1],sTime[1],c[index-고점[2,2]]);
//Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],NumToStr(고점[1,1],2));
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
TL_SetColor(TL1,BLACK);
//TL_SetColor(TL11,BLACK);
TL_SetSize(TL1,1);
//TL_SetSize(TL11,1);
If 고점[3,1] < 고점[2,1] and 고점[2,1] > 고점[1,1] and 저점[2,1] < 저점[1,1] Then
{
sBar = Index - 저점[2,2];
eBar = Index - 저점[1,2];
}
}
}
If 처리구분 == "저점처리" Then
{
lastLoVal = L;
If 저점[1,2] < 고점[1,2] Then
{
For j = 10 DownTo 2
{
저점[j,1] = 저점[j-1,1];
저점[j,2] = 저점[j-1,2];
}
}
If 저점[1,2] < 고점[1,2] or 저점[1,1] > L Then
{
저점[1,1] = L;
저점[1,2] = Index;
sBar = Index - 고점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
TL_Delete(TL11);
Text_Delete(Text1);
If 저점[2,1][1] < 저점[1,1][1] and 저점[2,1][1] < 저점[3,1][1] and 고점[2,1][1] > 고점[1,1][1] Then
TL_Delete(TL3);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],sDate[eBar],sTime[eBar],저점[1,1]);
//TL11 = TL_New(sDate[index-저점[2,2]],sTime[index-저점[2,2]],c[index-저점[2,2]],sDate[1],sTime[1],c[index-저점[2,2]]);
//Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],NumToStr(저점[1,1],2));
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
TL_SetColor(TL1,BLACK);
//TL_SetColor(TL11,BLACK);
TL_SetSize(TL1,1);
//TL_SetSize(TL11,1);
If 저점[2,1] < 저점[1,1] and 저점[2,1] < 저점[3,1] and 고점[2,1] > 고점[1,1] Then
{
sBar = Index - 고점[2,2];
eBar = Index - 고점[1,2];
}
}
}
mav = ma(C,20);
TL_Delete(TL13);
TL_Delete(TL14);
TL_Delete(TL15);
if 고점[1,2] > 저점[1,2] then
{
TL14 = TL_New(sDate[index-고점[1,2]],sTime[index-고점[1,2]],H[index-고점[1,2]]-PriceScale*3,sDate,sTime,H[index-고점[1,2]]-PriceScale*3);
TL_SetColor(TL13,GRAY);
TL_SetSize(TL13,0);
TL_SetExtRight(TL13,true);
TL_SetColor(TL14,GREEN);
TL_SetSize(TL14,3);
TL_SetExtRight(TL14,true);
TL_SetColor(TL15,GRAY);
TL_SetSize(TL15,0);
TL_SetExtRight(TL15,true);
}
if 고점[1,2] < 저점[1,2] then
{
TL15 = TL_New(sDate[index-저점[1,2]],sTime[index-저점[1,2]],L[index-저점[1,2]]+PriceScale*3,sDate,sTime,L[index-저점[1,2]]+PriceScale*3);
TL_SetColor(TL13,GRAY);
TL_SetSize(TL13,0);
TL_SetExtRight(TL13,true);
TL_SetColor(TL14,GRAY);
TL_SetSize(TL14,0);
TL_SetExtRight(TL14,true);
TL_SetColor(TL15,YELLOW);
TL_SetSize(TL15,3);
TL_SetExtRight(TL15,true);
}
plot1(index-고점[1,2]);
plot2(index-저점[1,2]);
위수식에서 수평선이 전봉시가부터 나오게 부탁드립니다
2019-07-02
235
글번호 129951
답변완료
수식작성부탁드립니다.
1. 옵셥(콜280.0, 풋 277.5)의 두가격의 합을 구할수 있는 수식을 알려 주시기바랍니다.
C280.0 현재가격 과 P277.5 현재가격의 합을
봉챠트(5분봉)나 선챠트(5일이동평균선)로 볼수 있도록 수식 부탁 드립니다.
2. 아래 수식에서 파동이 상승(저점에서 고점으로 상승 아래수식의 파동 그래프 참조)
중일때만 매수 진입이 허용되도록
"매수진입 수식"에 추가 수식작성 부탁 드립니다.
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]);
If 1 == 1 Then
{
Text1 = Text_New(고[1,3],고[1,4],고[1,1],NumToStr(고[1,1],2));
Text_SetStyle(Text1, 0, 1);
Text_SetColor(Text1,gray);
}
TL_SetSize(TL1,1);
TL_SetColor(TL1,gray);
}
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 1 == 1 Then
{
Text_SetLocation(Text1,고[1,3],고[1,4],고[1,1]);
Text_SetString(Text1,NumToStr(고[1,1],2));
}
}
최종꼭지점 = "고점";
}
#==========================================#
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]);
If 1 == 1 Then
{
Text1 = Text_New(저[1,3],저[1,4],저[1,1],NumToStr(저[1,1],2));
Text_SetStyle(Text1, 0, 0);
Text_SetColor(Text1,gray);
}
TL_SetSize(TL1,1);
TL_SetColor(TL1,gray);
}
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]);
If 1 == 1 Then
{
Text_SetLocation(Text1,저[1,3],저[1,4],저[1,1]);
Text_SetString(Text1,NumToStr(저[1,1],2));
}
}
최종꼭지점 = "저점";
}
2019-07-02
241
글번호 129948
답변완료
수식 여쭤봅니다.
안녕하세여?
수식좀 여쭤봅니다~
매수금액은 1000000원 이런식으로 변수설정 하고 싶구요.
개별주식 매매.
매매는 1분봉에 적용하려고 합니당.
매수조건은
전일 종가 대비 오늘 시가가 0% ~ 4% 이내 형성시
매수 배정 금액의 60%를 시가 매수
매수 배정 금액의 40%는 시가에서 -2% 하락시
매수시간은 9시~9시15분
1차매수든 2차매수든 일어나면
1차매도는 매수평단가 3% 상승시 전체물량의 70% 매도
3% 상승후 다시 2% 하락시 전체 매도
2차매도는 매수평단가 6% 상승시 남은 물량의 50% 매도
6% 상승후 다시 2% 하락시 전체 매도
3차매도는 매수평단가 9% 상승시 전체 매도
손절은 매수평단가 -3% 시에 50% 손절
매수평단가 -5% 시에 100% 손절
1차매수든 2차매수든 일어나서 당일 물량 전체가 매도시에는
당일날 재매수 금지
당일 15시18분 전량 무조건 매도
이렇게 하고 싶습니다.
언제나 감사합니다~
2019-07-02
230
글번호 129946
답변완료
수식 문의드립니다
1.
일봉에서
음봉 고가를 첫번째 양봉 고가로 돌파시키지 못하고 두번째 양봉 고가로 돌파하는 경우
음봉 고가를 돌파한 두번째 양봉 저가를 틱봉에서 그리는 수식
일봉에서
양봉 저가를 첫번째 음봉 저가로 붕괴시키지 못하고 두번째 음봉 저가로 붕괴하는 경우
양봉 저가를 붕괴시킨 두번째 음봉 고가를 틱봉에서 그리는 수식
2.
일봉에서 양+음+음 패턴일때 두번째 음봉 고가를 틱봉에서 그리는 수식
일봉에서 음+양+양 패턴일때 두번째 양봉 저가를 틱봉에서 그리는 수식
3.
일봉에서 음봉+음봉 고가를 돌파한 양봉+양봉 저가를 붕괴시킨 음봉 조합일때
양봉 저가를 붕괴시킨 음봉 시가를 틱봉으로 구현하는 수식
일봉에서 양봉+양봉 저가를 붕괴한 음봉+음봉 고가를 돌파시킨 양봉 조합일때
음봉 고가를 돌파시킨 양봉 시가를 틱봉으로 구현하는 수식
2019-07-02
244
글번호 129943
답변완료
문의
옵션 거래에 사용하는 수식입니다.
진입가격대별로 손절,익절,tr을 지정하는 수식으로 수정 요청드립니다.
1) 2.01 이상 3.00 이하 진입했을 때 손절,익절,tr
2) 3.01 이상 4.00 이하 진입했을 때 손절,익절,tr
*********************************************************************
input : 최대(4.00), 최소(2.01);
input : 손절(60),익절(99999),TR(150);
var : ma1(0), ma2(0);
ma1 = ma(C,5);
ma2 = ma(C,20);
if 최대 >= C and C >= 최소 and CrossUp(ma1, ma2) then
buy();
if MarketPosition == 1 then
{
ExitLong("bl1",AtStop,EntryPrice-PriceScale*손절);
ExitLong("bp1",Atlimit,EntryPrice+PriceScale*익절);
ExitLong("btr1",AtStop,highest(h,BarsSinceEntry)-PriceScale*TR);
}
2019-07-02
242
글번호 129941