커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7762
글번호 230811
답변완료
1일 1회진입
1일 1회만 진입토록 수정하여 주시기 바랍니다.
Inputs: Strength(4),p1(2000),p2(250);
Variables: LowPivot(0);
var : Cond1(False), Cond2(False), Cond5(False), Cond4(False),cond6(false), sellCond(0), bPosition(0);
var1=ma(bids-asks,3);
var2=ma(data2("c")-data3("c"),3);
If SwingLow(1, Low, Strength, Strength, Strength*2+1) <> -1 Then Begin
Condition1 = True;
LowPivot = Low[Strength];
End;
If MarketPosition() == -1 Then
Condition1 = False;
Cond1 = Condition1 && (var1<0 ) ; //매수조건1
Cond2 = Condition1 && (var2<0 ) ; //매수조건2
Cond4 = (var1>p1) ; //매수청산조건1
Cond5 = var2>p2 ; //매수청산조건2
cond6 = EntryPrice() - 1 > c && (var1>0 or var2>0 );
//매수식
if bposition != 1 then Begin
if Cond1 then {
sell("PivB1", AtStop, LowPivot);
sellCond = 1;
bposition = -1;
}
if Cond2 then {
sell("PivB2", AtStop, LowPivot);
sellCond = 2;
bposition = -1;
}
End;
//매수청산식
if sellCond == 1 and (Cond4 or cond6) then {
exitshort();
bPosition = 0;
}
if sellCond == 2 and (Cond5 or cond6) then {
exitshort();
bPosition = 0;
}
2009-11-17
802
글번호 26199
답변완료
barssinceentry에서 매수봉 위치가 다른 것.
안녕하세요.
매수 신호가 1번봉에서 나올 때 alimit를 써서 실제 진입은 2번봉 시가에 시작했습니다.
청산을 위해 아래와 같이 작성했는데, highest(h, barssinceentry)가 적용되는 시점은 3번 봉 부터더군요. 진입을 했던 2번 봉부터 고가가 체크되도록 할 수는 없는지요?
예제>
if marketposition()==0 && stime>=090000 && c > dayopen()+(dayhigh(1)-daylow(1))*0.3 then buy("B", atlimit, c);
if marketposition()==1 && c < highest(h, barssinceentry)-(atr(20)*3) then exitlong("Bx", atlimit, c);
2009-11-17
840
글번호 26198
답변완료
진입
수고 많으시네요
데이로 당일 10:30까지 진입이 없었다면 시스템을 하지 않고자 합니다
수식으로 표현 부탁드립니다
2009-11-17
774
글번호 26190
먼지의추억 님에 의해서 삭제되었습니다.
2009-11-17
0
글번호 26189
답변완료
메일확인 부탁드립니다.
안녕하세요?
메일로 질문 드렸습니다. 번거로우시겠지만
메일 확인 부탁드립니다~
2009-11-17
691
글번호 26188
답변완료
수식 해석 부탁 드려요.
#property copyright "Copyright ?2006, Nick Bilak"
#property copyright "alterations by Mark Tomlinson"
#property copyright "alterations by Money Duck @ 4xCampus.com"
#property link "http://www.forex-tsd.com/"
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Yellow
#property indicator_color2 Lime
#property indicator_color3 Red
#property indicator_color4 Aqua
#property indicator_width1 1
#property indicator_width2 1
#property indicator_width3 1
#property indicator_width4 1
//input properties
extern int dist2 = 21;
extern int dist1 = 14;
extern bool alertsOn = true;
extern bool alertsOnCurrent = true;
extern bool alertsMessage = true;
extern bool alertsSound = true;
extern bool alertsEmail = false;
double b1[];
double b2[];
double b3[];
double b4[];
int init()
{
SetIndexBuffer(0,b1);
SetIndexBuffer(1,b2);
SetIndexBuffer(2,b3);
SetIndexBuffer(3,b4);
SetIndexStyle(0,DRAW_ARROW); SetIndexArrow(0,334);
SetIndexStyle(1,DRAW_ARROW); SetIndexArrow(1,333);
SetIndexStyle(2,DRAW_ARROW); SetIndexArrow(1,233);
SetIndexStyle(3,DRAW_ARROW); SetIndexArrow(0,234);
return(0);
}
int start()
{
int counted_bars=IndicatorCounted();
int i,limit,hhb,llb,hhb1,llb1;
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars;
limit=MathMax(limit,dist1);
limit=MathMax(limit,dist2);
//
//
//
//
//
for (i=limit;i>=0;i--)
{
hhb1 = Highest(NULL,0,MODE_HIGH,dist1,i-dist1/2);
llb1 = Lowest(NULL,0,MODE_LOW,dist1,i-dist1/2);
hhb = Highest(NULL,0,MODE_HIGH,dist2,i-dist2/2);
llb = Lowest(NULL,0,MODE_LOW,dist2,i-dist2/2);
b1[i] = EMPTY_VALUE;
b2[i] = EMPTY_VALUE;
b3[i] = EMPTY_VALUE;
b4[i] = EMPTY_VALUE;
double tr = iATR(NULL,0,50,i);
if (i==hhb) b1[i]=High[hhb] +tr;
if (i==llb) b2[i]=Low[llb] -tr;
if (i==hhb1) b3[i]=High[hhb1]+tr/2;
if (i==llb1) b4[i]=Low[llb1] -tr/2;
}
//
//
//
//
//
if (alertsOn)
{
int forBar = 1;
if (alertsOnCurrent) forBar = 0;
if (b1[forBar] != EMPTY_VALUE && b3[forBar] != EMPTY_VALUE) doAlert("strong sell");
if (b1[forBar] != EMPTY_VALUE && b3[forBar] == EMPTY_VALUE) doAlert("sell");
if (b1[forBar] == EMPTY_VALUE && b3[forBar] != EMPTY_VALUE) doAlert("minor sell or exit buy");
if (b2[forBar] != EMPTY_VALUE && b4[forBar] != EMPTY_VALUE) doAlert("strong buy");
if (b2[forBar] != EMPTY_VALUE && b4[forBar] == EMPTY_VALUE) doAlert("buy");
if (b2[forBar] == EMPTY_VALUE && b4[forBar] != EMPTY_VALUE) doAlert("minor buy or exit sell");
}
return(0);
}
//
//
//
//
//
void doAlert(string doWhat)
{
static string previousAlert="nothing";
static datetime previousTime;
string message;
string TimePeriod;
if (Period()== 1) TimePeriod = "1 MIN";
if (Period()== 5) TimePeriod = "5 MIN";
if (Period()== 15) TimePeriod = "15 MIN";
if (Period()== 30) TimePeriod = "30 MIN";
if (Period()== 60) TimePeriod = "1 HR";
if (Period()== 240) TimePeriod = "4 HR";
if (Period()== 1440) TimePeriod = "DAILY";
if (Period()== 10080) TimePeriod = "WEEKLY";
if (Period()== 43200) TimePeriod = "MONTHLY";
if (previousAlert != doWhat || previousTime != Time[0]) {
previousAlert = doWhat;
previousTime = Time[0];
//
//
//
//
//
message = StringConcatenate(Symbol()," at ", TimePeriod, " Super signal : ",doWhat);
if (alertsMessage) Alert(message);
if (alertsEmail) SendMail(StringConcatenate(Symbol(),"Super signal "),message);
if (alertsSound) PlaySound("alert2.wav");
}
}
1) MQ4 파일로 되어 있는데 파일 그대로 적용 가능 할까요?
아니면 고쳐서 써야 하나요.. 고쳐야 한다면 어떻게 고쳐서 써야 하나요?
2) 해석 부탁 드림니다..
2009-11-16
1105
글번호 26187
답변완료
청산에 관하여 재문의 드립니다
항상 감사합니다
강제청산 설정에서
당일청산 시간 03:00pm으로 한 경우 정확히 청산시점과 청산가격과 청산 봉 부탁합니다
감사합니다
2009-11-16
702
글번호 26186
관리자에 의해서 삭제되었습니다.
2009-11-16
11
글번호 26185
답변완료
렌코차트에 관하여
안녕하세요~? 수고가 많으십니다..
다름이 아니라 제가 렌코차트를 이용해 시스템을 돌려보고 싶은데요
적용가능하게 수정 부탁드리겠습니다..
2009-11-16
752
글번호 26184