تفضل اخي
[PHP] //+------------------------------------------------------------------+
//| |
//| |
//| |
//|
[عذراً, فقط الأعضاء يمكنهم مشاهدة الروابط ] |
//+------------------------------------------------------------------+
#property copyright "yanou"
#property link "
[عذراً, فقط الأعضاء يمكنهم مشاهدة الروابط ] "
#property indicator_chart_window
extern string TrendName="fibo";
extern bool DrawFiboTime=true;
extern color FiboTimeColor=Blue;
extern bool DrawFiboRetracement=true;
extern color FiboRetColor=Red;
extern int FiboWidth=2;
extern string FiboTimeLevels="1,2,3,5,8,13,21,34";
extern string FiboRetLevels="0.0,61.8,50,38.2,23.6,100";
string FiboT[];
string FiboR[];
int SizeR,SizeT;
int init()
{
int start=0;
for(int i=0;i<StringLen(FiboTimeLevels);i++)
{
int Position=StringFind(FiboTimeLevels,",",i);
if(Position+1!=start)
{
string Num=StringSubstr(FiboTimeLevels,start,Position-start);
Print(Position,"--",Num);
ArrayResize(FiboT,SizeT+1);
FiboT[SizeT]=Num;
start=Position+1;
SizeT++;
}
}
start=0;
for( i=0;i<StringLen(FiboRetLevels);i++)
{
Position=StringFind(FiboRetLevels,",",i);
if(Position+1!=start)
{
Num=StringSubstr(FiboRetLevels,start,Position-start);
Print(Position,"--",Num);
ArrayResize(FiboR,SizeR+1);
FiboR[SizeR]=Num;
start=Position+1;
SizeR++;
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
Comment("");
ObjectDelete("FiboT");
ObjectDelete("Fibo");
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
Comment("Programmed by yanou"+"\n"+"Idea Created by zoom"+"\n"+"القمة للعملات"+"\n"+"www.topforex1.net/vb");
if(ObjectFind(TrendName)!=-1)
{
datetime T1=ObjectGet(TrendName,OBJPROP_TIME1);
datetime T2=ObjectGet(TrendName,OBJPROP_TIME2);
double P1=ObjectGet(TrendName,OBJPROP_PRICE1);
double P2=ObjectGet(TrendName,OBJPROP_PRICE2);
}
drawObjects(TrendName+":",P1,T1,P2,T2);
return(0);
}
void drawObjects(string name,double Price1,datetime Time1,double Price2,datetime Time2)
{
if(ObjectFind(name+"Fibo")==-1&&DrawFiboRetracement){
ObjectCreate(name+"Fibo",OBJ_FIBO,0,Time1,Price1,T ime2,Price2);
ObjectSet(name+"Fibo",OBJPROP_FIBOLEVELS,SizeR+1);
for(int i=0;i<SizeR;i++)
{
ObjectSet(name+"Fibo",OBJPROP_FIRSTLEVEL+i,StrToDo uble(FiboR[i])/100);
ObjectSetFiboDescription(name+"Fibo",i,FiboR[i]+" %$");
}
ObjectSet(name+"Fibo", OBJPROP_LEVELCOLOR, FiboRetColor) ;
ObjectSet(name+"Fibo", OBJPROP_WIDTH, FiboWidth) ;
}
if(ObjectFind(name+"FiboT")==-1&&DrawFiboTime)
{
ObjectCreate(name+"FiboT",OBJ_FIBOTIMES,0,Time1,Pr ice1,Time2,Price2);
ObjectSet(name+"FiboT",OBJPROP_FIBOLEVELS,SizeT+1) ;
for( i=0;i<SizeT;i++)
{
ObjectSet(name+"FiboT",OBJPROP_FIRSTLEVEL+i,StrToD ouble(FiboT[i]));
ObjectSetFiboDescription(name+"FiboT",i,FiboT[i]);
}
ObjectSet(name+"FiboT", OBJPROP_LEVELCOLOR, FiboTimeColor) ;
ObjectSet(name+"FiboT", OBJPROP_WIDTH, FiboWidth) ;
}
if(ObjectGet(name+"Fibo",OBJPROP_TIME1)!=Time1||Ob jectGet(name+"Fibo",OBJPROP_TIME2)!=Time2||
ObjectGet(name+"Fibo",OBJPROP_PRICE1)!=Price1||Obj ectGet(name+"Fibo",OBJPROP_PRICE2)!=Price2)
{
ObjectDelete(name+"Fibo");ObjectDelete(name+"FiboT ");
drawObjects(name,Price1,Time1,Price2,Time2);
}
}
//+------------------------------------------------------------------+[/PHP]