커뮤니티
수식 해석 부탁 드려요.
2009-11-16 23:59:58
1018
글번호 26187
#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) 해석 부탁 드림니다..
답변 8
예스스탁 예스스탁 답변
2009-11-17 11:16:16
안녕하세요
예스스탁입니다.
해당내용은 사용한적이 없는 랭귀지라
내용을 알수 없습니다.
도움을 드리지 못해 죄송합니다.
즐거운 하루되세요
> 향초 님이 쓴 글입니다.
> 제목 : 수식 해석 부탁 드려요.
> #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) 해석 부탁 드림니다..
회원
2010-05-02 09:49:47
관리자님에 의해 삭제된 답변입니다.
회원
2010-05-02 21:00:48
관리자님에 의해 삭제된 답변입니다.
회원
2010-05-03 06:55:25
관리자님에 의해 삭제된 답변입니다.
회원
2010-05-03 10:33:05
관리자님에 의해 삭제된 답변입니다.
회원
2010-05-03 17:58:02
관리자님에 의해 삭제된 답변입니다.
회원
2010-05-03 21:40:17
관리자님에 의해 삭제된 답변입니다.
회원
2010-05-10 06:12:58
관리자님에 의해 삭제된 답변입니다.
다음글
이전글