커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
5420
글번호 230811
답변완료
문의드립니다.
var1 = ema(ema(c-(highest(H,g) + lowest(L,g))*0.5,r),s) * 100/
(0.5 * ema(ema(highest(H,g)-lowest(L,g),r),s));
상기식에서 ema대신 삼각이평을 쓰고싶은데 부탁합니다.
2020-03-17
194
글번호 136978
답변완료
수식문의드립니다.
var1 = ma(c,이평1);
var2 = ma(c,이평2);
if var1 > var1[1] Then
T = 1;
if var1 < var1[1] Then
T = -1;
if T== 1 and var2 > c Then {
buy("b",AtLimit,o+PriceScale*N);
1.
이경우 첫번째 손절시에는 음봉시에만 종가로 진입
익절시에는 조건식에 반복적으로 진입함
2.두번째 손절시에는 양봉시에만 종가로 진입
3.세번재 진입없음.
4.조건식에서 매수경우 다음봉이 "고가=시가"인 경우 진입이 안되게 할수 없나요?
5.var2> c (첫음봉,둘째음봉)세번째 음봉종가 매수도 가능할까요? 첫음봉과 둘째음봉사이에 양봉이 있어도 상관이 없음.
가능할까요?
2020-03-17
199
글번호 136976
답변완료
문의
데이트레이딩 오후장에 사용할 진입필터 요청합니다.
당일 10포인트 이상 하이로우 발생한 후
역으로 10포인트 이상 움직이는 경우를 제외
if 진입수식 and (하이로우 10포인트 이하 and 역하이로우 10포인트 이하) then
buy();
2020-03-17
177
글번호 136961
알리섬 님에 의해서 삭제되었습니다.
2020-03-18
18
글번호 136958
회원 님에 의해서 삭제되었습니다.
2020-03-17
11
글번호 136957
답변완료
질문드립니다.
차트를 2개 켜서,
2번 차트에서 5일선이 20일선 위에 있을 때,
1번 차트 5일선이 10일선 골든 크로스 발생하면 매수 진입
하려면 어떻게 작성해야되나요?
2020-03-17
251
글번호 136956
답변완료
틱차트에서 첫봉 진입제한 방법
안녕하세요!
틱차트에서 첫번째 봉에서 진입제한을 위해, dayindex > 1 로 셋팅을 해도,
진입제한이 되지 않고, 신호가 발생하네요.
첫봉 진입제한 방법 안내바랍니다.
감사합니다.
2020-03-17
279
글번호 136954
답변완료
추세선
Input:length(10),n(1),카운팅시작일자(20200317), 카운팅시작시간(070000);
Var:j(0),k(0),q(0),TL1(0),TL2(0),TL3(0),
TL_NewBit(0),Tcond(false); // 1:NewLine 2:SetEndLine
Array:고[10,4](0),저[10,4](0); // 1:가격,2:Index,3:sDate,4:sTime
#==========================================#
if sdate >= 카운팅시작일자 and stime >= 카운팅시작시간 Then
Tcond = true;
if Tcond == true Then
{
/* if (sdate != sdate[1] and stime >= 카운팅시작시간) or
(sdate == sdate[1] and stime >= 카운팅시작시간 and stime[1] < 카운팅시작시간) Then
{*/
Value1 = HiLoLineZigZag(length,0,고,저,TL_NewBit);
If Value1 == 1 Then // 고점
{
If TL_NewBit == 1 Then // 신규 고점
{
//TL1 = TL_New(저[1,3],저[1,4],저[1,1],고[1,3],고[1,4],고[1,1]);
TL_SetSize(TL1,1);
k = 0;
For j = 2 To 10
{
If 저[1,1] > 저[j,1] and 저[j,1] > 0 Then { // 전저점보다 낮은 이전 전저점 찾는다
k = j;
j = 10; // exit loop
}
}
If k > 1 Then // 낮은 전저점이 찾아졌다면
{
TL2 = TL_New(저[k,3],저[k,4],저[k,1],sDate,sTime,(저[1,1]-저[k,1])/(저[1,2]-저[k,2])*(Index-저[k,2])+저[k,1]);
TL_SetColor(TL2,BLUE);
TL_SetExtright(TL2,True);
}
q = q + 1; // 고점이 새로 추가되었으므로 1 증가
If q > 2 and q <= 10 Then // 1 증가했으니 2보다 커야 하고 배열 크기가 10이므로 10 이내
{
TL_SetEnd(TL3,sDate,sTime,(고[2,1]-고[q,1])/(고[2,2]-고[q,2])*(Index-고[q,2])+고[q,1]);
}
}
Else // 신규 고점이 아니면 기존 추세선만 연장
{
If k > 1 Then
{
TL_SetEnd(TL2,sDate,sTime,(저[1,1]-저[k,1])/(저[1,2]-저[k,2])*(Index-저[k,2])+저[k,1]);
}
If q > 2 and q <= 10 Then
{
TL_SetEnd(TL3,sDate,sTime,(고[2,1]-고[q,1])/(고[2,2]-고[q,2])*(Index-고[q,2])+고[q,1]);
}
}
If TL_NewBit == 2 Then
{
TL_SetEnd(TL1,고[1,3],고[1,4],고[1,1]);
}
}
Else If Value1 == -1 Then // 저점
{
If TL_NewBit == 1 Then // 신규 저점
{
//TL1 = TL_New(고[1,3],고[1,4],고[1,1],저[1,3],저[1,4],저[1,1]);
TL_SetSize(TL1,1);
k = k + 1; // 저점이 새로 추가되었으므로 1 증가
If k > 2 and k <= 10 Then // 1 증가했으니 2보다 커야 하고 배열의 크기가 10이므로 10 이내
{
TL_SetEnd(TL2,sDate,sTime,(저[2,1]-저[k,1])/(저[2,2]-저[k,2])*(Index-저[k,2])+저[k,1]);
}
q = 0;
For j = 2 To 10
{
If 고[1,1] < 고[j,1] Then // 전고점보다 높은 이전 전고점을 찾는다
{
q = j;
j = 10; // exit loop
}
}
If q > 1 Then // 높은 전고점이 찾아졌다면
{
TL3 = TL_New(고[q,3],고[q,4],고[q,1],sDate,sTime,(고[1,1]-고[q,1])/(고[1,2]-고[q,2])*(Index-고[q,2])+고[q,1]);
TL_SetColor(TL3,RED);
TL_SetExtright(TL3,True);
}
}
Else
{ // 신규 저점이 아니면 기존 추세선만 연장
If k > 2 and k <= 10 Then
{
TL_SetEnd(TL2,sDate,sTime,(저[2,1]-저[k,1])/(저[2,2]-저[k,2])*(Index-저[k,2])+저[k,1]);
}
If q > 1 Then
{
TL_SetEnd(TL3,sDate,sTime,(고[1,1]-고[q,1])/(고[1,2]-고[q,2])*(Index-고[q,2])+고[q,1]);
}
}
If TL_NewBit == 2 Then
{
TL_SetEnd(TL1,저[1,3],저[1,4],저[1,1]);
}
}
// }
}
상기 그림과같이 상승추세일때 ①당일저점추세선형성후 ②당일저점추세선이형성되었을시
현재봉이 전고점③보다높게 형성되면 ①당일저점추세선이 삭제되고 ②당일추세선만 나타나게 상기수식을 수정시켜주시면 대단히 감사하겠습니다
반대로 하락추세일때도 같이상기수식으로 수정 부탁드립니다
2020-03-17
428
글번호 136951
답변완료
항상 도움을 주셔서 고맙습니다. 다음 시스템 식 도움 부탁드립니다.
늘 도움을 주셔서 감사드립니다.
다음과 같은 종목검색식이 있다고 했을 때,
[종목검색]
1. 코스피/코스닥 등락률(기준가대비) 상위 순으로 100
2. 코스피/코스닥 거래대금 상위 순으로 100
3. 3분봉에서 종가기준 20이평선과 이격도 -3% 이상
이러한 검색식으로 검색된 종목 내에서 아래 조건으로 매수/매도가 가능한가요?
검색식과 매매 시스템식이 같이 동작할 수 있는 방법이 있을까요?
[매수]
3분봉 -3% 이상 이격이 발생한 봉의 다음 봉 시가에 진입
[매도]
2% 익절
2020-03-17
293
글번호 136950