仕事が完了した
実行時間2 分
依頼者からのフィードバック
very understanding and very fast
開発者からのフィードバック
Great customer! thanks for your order!
指定
//+------------------------------------------------------------------+
//| NSNDHistory.mq4 |
//| Copyright © 2011, MetaQuotes Software Corp. |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
extern int barcount=500;
extern int NSNDcount=10;
string comment[10];
static int prevtime=0;
static int prevfirstbar=0;
static double prevpricemax=0;
#property indicator_chart_window
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------0-----------------------------+
int init()
{
//---- indicators
f_clear();
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
f_clear();
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
string Bull_or_Bear,obj_nameND;
bool Low_Volume,Pins,Bear_Close_Below,Bull_Close_Above,Bear_Close_Above,Bull_Close_Below;
string label;
double chartheight=WindowPriceMax()-WindowPriceMin();
double addhigh=6.00/100.00*chartheight;
// Comment(WindowFirstVisibleBar()," ",prevfirstbar);
//----
if(WindowFirstVisibleBar()!=prevfirstbar)
{
prevtime=0;
}
if(WindowPriceMax()!=prevpricemax)
{
prevtime=0;
}
// if(Time[0]!=prevtime) // | prevfirstbar!=WindowFirstVisibleBar())// && 11==2)
{
f_clear();
//for(int i=barcount;i>=1;i--)
for(int i=WindowFirstVisibleBar();i>=WindowFirstVisibleBar()-500 && i>=0 ;i--)
{
Bull_or_Bear=f_Bull_or_Bear(i);
Low_Volume=f_Low_Volume(i);
Pins=f_Pins(i,Bull_or_Bear);
// Comment(Bull_or_Bear," Low Volume ",Low_Volume," Pins ",Pins );
Bear_Close_Below=false;
Bear_Close_Above=false;
Bull_Close_Above=false;
Bull_Close_Below=false;
for(int ix=i;ix>i-NSNDcount && ix>=0;ix--)
{
if(Bull_or_Bear=="Bear" && Close[ix]<Low[i] && !Bear_Close_Above)
{
Bear_Close_Below=true;
}
if(Bull_or_Bear=="Bear" && Close[ix]>High[i] && !Bear_Close_Below)
{
Bear_Close_Above=true;
}
if(Bull_or_Bear=="Bull" && Close[ix]>High[i] && !Bear_Close_Below)
{
Bull_Close_Above=true;
}
if(Bull_or_Bear=="Bull" && Close[ix]<Low[i] && !Bear_Close_Above)
{
Bull_Close_Below=true;
}
}//end for ix
label=TimeYear(Time[i])+DoubleToStr(TimeMonth(Time[i]),0)+DoubleToStr(TimeDay(Time[i]),0);
label=label+DoubleToStr(TimeHour(Time[i]),0)+DoubleToStr(TimeMinute(Time[i]),0);
obj_nameND="No Demand - "+i+" - "+label; ObjectDelete(obj_nameND);
if(Bull_or_Bear=="Bull" && Low_Volume && Pins && !Bull_Close_Above && Bull_Close_Below)
{
ObjectCreate(obj_nameND,OBJ_TEXT,0,Time[i],High[i]+(addhigh));//+spread+0.0005);
ObjectSetText(obj_nameND,"v",18,"Arial",Red);
ObjectSet(obj_nameND,OBJPROP_PRICE1,High[i]+(addhigh));
ObjectSet(obj_nameND,OBJPROP_TIME1,Time[i]);
if(High[i]-Close[i]>Open[i]-Low[i])
{
ObjectSetText(obj_nameND,"v",18,"Arial",Red);
}
}
obj_nameND="No Supply - "+i+" - "+label; ObjectDelete(obj_nameND);
if(Bull_or_Bear=="Bear" && Low_Volume && Pins && !Bear_Close_Below && Bear_Close_Above)
{
string obj_nameNS="No Supply - "+i+" - "+label;
ObjectCreate(obj_nameNS,OBJ_TEXT,0,Time[i],Low[i]);//-spread-0.0005);
ObjectSetText(obj_nameNS,"^",22,"Arial",Lime);
ObjectSet(obj_nameNS,OBJPROP_PRICE1,Low[i]);
ObjectSet(obj_nameNS,OBJPROP_TIME1,Time[i]);
if(High[i]-Open[i]<Close[i]-Low[i])
{
ObjectSetText(obj_nameNS,"^",18,"Arial",Lime);
}
}
}//end for i
prevtime=Time[0];
prevfirstbar=WindowFirstVisibleBar();
prevpricemax=WindowPriceMax();
}//endif if prevtime
//----
return(0);
}
string f_Bull_or_Bear(int i)
{
string retvar;
if(Open[i]>Close[i])
{
retvar="Bear";
comment[i]=comment[i]+"Bear ";
}
if(Close[i]>Open[i])
{
retvar="Bull";
comment[i]=comment[i]+"Bull ";
}
return(retvar);
}
bool f_Low_Volume(int i)
{
bool retvar=False;
if(Volume[i]<Volume[i+1] && Volume[i]<Volume[i+2])
{
retvar=True;
comment[i]=comment[i]+"Low Vol ";
}
return(retvar);
}
bool f_Pins(int i,string Bull_or_Bear)
{
bool Pins=false;
double pip=Point*1;
bool retval;
if(Bull_or_Bear=="Bear" && High[i]>Open[i]+pip && Low[i]<Close[i]-pip)
{
retval=true;
comment[i]=comment[i]+" Pins";
}
if(Bull_or_Bear=="Bull" && High[i]>Close[i]+pip && Low[i]<Open[i]-pip)
{
retval=true;
comment[i]=comment[i]+" Pins";
}
return(retval);
}
void f_clear()
{
for (int i=ObjectsTotal(); i>0; i--)
{
if(StringSubstr(ObjectName(i),0,2)=="No")
{
ObjectDelete(ObjectName(i));
}
}
for (i=ObjectsTotal(); i>0; i--)
{
if(StringSubstr(ObjectName(i),0,2)=="No")
{
ObjectDelete(ObjectName(i));
}
}
}
//+------------------------------------------------------------------+
応答済み
1
評価
プロジェクト
124
40%
仲裁
17
47%
/
53%
期限切れ
31
25%
取り込み中
2
評価
プロジェクト
22
23%
仲裁
5
40%
/
60%
期限切れ
2
9%
仕事中
3
評価
プロジェクト
624
54%
仲裁
30
53%
/
23%
期限切れ
6
1%
多忙
4
評価
プロジェクト
166
43%
仲裁
3
67%
/
0%
期限切れ
5
3%
仕事中
パブリッシュした人: 1 code
5
評価
プロジェクト
228
80%
仲裁
22
27%
/
50%
期限切れ
11
5%
暇
パブリッシュした人: 24 articles, 1882 codes
6
評価
プロジェクト
624
33%
仲裁
39
36%
/
49%
期限切れ
11
2%
多忙
7
評価
プロジェクト
35
46%
仲裁
0
期限切れ
0
暇
パブリッシュした人: 3 codes
8
評価
プロジェクト
1
0%
仲裁
1
0%
/
100%
期限切れ
0
暇
9
評価
プロジェクト
596
35%
仲裁
64
20%
/
58%
期限切れ
147
25%
仕事中
パブリッシュした人: 1 article, 22 codes
10
評価
プロジェクト
66
12%
仲裁
12
58%
/
42%
期限切れ
1
2%
暇
11
評価
プロジェクト
2
0%
仲裁
5
0%
/
80%
期限切れ
1
50%
暇
12
評価
プロジェクト
105
60%
仲裁
0
期限切れ
0
暇
13
評価
プロジェクト
35
20%
仲裁
5
40%
/
40%
期限切れ
0
暇
パブリッシュした人: 1 code
14
評価
プロジェクト
6
17%
仲裁
0
期限切れ
3
50%
暇
15
評価
プロジェクト
18
6%
仲裁
8
38%
/
38%
期限切れ
2
11%
取り込み中
16
評価
プロジェクト
333
35%
仲裁
66
12%
/
58%
期限切れ
87
26%
暇
17
評価
プロジェクト
476
69%
仲裁
6
67%
/
0%
期限切れ
2
0%
仕事中
18
評価
プロジェクト
308
69%
仲裁
2
100%
/
0%
期限切れ
0
暇
パブリッシュした人: 1 code
19
評価
プロジェクト
642
40%
仲裁
2
100%
/
0%
期限切れ
1
0%
暇
パブリッシュした人: 9 codes
20
評価
プロジェクト
471
39%
仲裁
102
40%
/
24%
期限切れ
78
17%
多忙
パブリッシュした人: 2 codes
21
評価
プロジェクト
0
0%
仲裁
0
期限切れ
0
暇
プロジェクト情報
予算
30+ USD
締め切り
最低 1 最高 2 日