//+------------------------------------------------------------------+ //| ZFXiSwap2.mq4 | //| Copyright © 2013, ZeonFX | //| http://www.mql4.com/users/ZeonFX | //+------------------------------------------------------------------+ #property copyright "Copyright © 2013, ZeonFX" #property link "http://www.mql4.com/users/ZeonFX" #property indicator_separate_window extern string Symbols = "EURUSD,GBPUSD,USDCHF"; extern bool Daydiffpip= true; //pip or % extern bool HiLo = true; extern int FontSize = 10; extern string FontName = "Tahoma"; extern color FontColor = Silver; extern color Color2 = Lime; extern color Color3 = Red; extern color Color4 = Aqua; extern color Color5 = DodgerBlue; extern color Color6 = DarkOrange; //+------------------------------------------------------------------------------------------------------------------+ int NumberOfinf = 9; string inf[] = {"Symbol","Bid","LastDayDiff","Spread","Swap Buy","Swap Sell","Hi-Lo Today","Hi-Lo Week","Hi-Lo Mounth"}; int PosX = 3; int PosY = 3; string ShortName = "ZFXiSwap2"; string SymbolsArray[1], CurrentSymbol, bid, daydiff, spread, buy, sell, subsar; double point, hlto, hlwe, hlmo; int digits, size, Q, G, wsname, X, K; //+------------------------------------------------------------------+ int init() { RefreshRates(); string delim = ","; if(StringLen(Symbols)==0) {size = 1;} else {size = 1+StringFindCount(Symbols,delim);} ArrayResize(SymbolsArray,size); if(StringLen(Symbols)>0){StrToStringArray(Symbols,SymbolsArray,delim);} if(Digits==5||Digits==3){Q=10;G=1000;} else{Q=1;G=100;} if(Digits<4){point=0.01;digits=2;} else{point=0.0001;digits=4;} return(0); } //+------------------------------------------------------------------+ int deinit() { for(int w=0;w0) { CurrentSymbol = StringTrim(SymbolsArray[s]); } } if(HiLo){NumberOfinf = 9;} else {NumberOfinf = 6;} wsname = WindowFind(ShortName); for(int v=0;viMA(subsar, PERIOD_M1, 1, 0, MODE_EMA, PRICE_CLOSE, 1)) ObjectSetText("ZFXiBid"+w,bid,FontSize,FontName,Color2); if (MarketInfo(subsar,MODE_BID)0) ObjectSetText("ZFXiDayDif"+w,"+"+daydiff,FontSize,FontName,Color2); else ObjectSetText("ZFXiDayDif"+w,daydiff,FontSize,FontName,Color3); if (MarketInfo(SymbolsArray[w],18)>=0) ObjectSetText("ZFXiBuy"+w,"+"+buy,FontSize,FontName,Color2); else ObjectSetText("ZFXiBuy"+w,buy,FontSize,FontName,Color3); if (MarketInfo(SymbolsArray[w],19)>=0) ObjectSetText("ZFXiSell"+w,"+"+sell,FontSize,FontName,Color2); else ObjectSetText("ZFXiSell"+w,sell,FontSize,FontName,Color3); } return(0); } //+------------------------------------------------------------------+ void CreateLabel(string Name, int Window, string Txt, int FontS, string FontName, color FontColor, int Corner, int x, int y) { if(ObjectFind(Name)!=0) ObjectCreate(Name, OBJ_LABEL, Window, 0, 0); ObjectSetText(Name, Txt, FontS, FontName, FontColor); ObjectSet(Name, OBJPROP_CORNER, Corner); ObjectSet(Name, OBJPROP_XDISTANCE, x); ObjectSet(Name, OBJPROP_YDISTANCE, y); ObjectSet(Name, OBJPROP_BACK, false ); } //+------------------------------------------------------------------+ int StringFindCount(string str, string str2) //+------------------------------------------------------------------+ // Returns the number of occurrences of STR2 in STR // Usage: int x = StringFindCount("ABCDEFGHIJKABACABB","AB") returns x = 3 { int c = 0; for (int i=0; iz1+1) a[i] = StringSubstr(str,z1+1,z2-z1-1); if (z2 >= StringLen(str)-1) break; z1 = z2; } return(StringFindCount(str,delim)); } //+------------------------------------------------------------------+ string StringTrim(string str) //+------------------------------------------------------------------+ // Removes all spaces (leading, traing embedded) from a string // Usage: string x=StringUpper("The Quick Brown Fox") returns x = "TheQuickBrownFox" { string outstr = ""; for(int i=0; i 0) return(StringSubstr(str,StringLen(str)-n,n)); if (n < 0) return(StringSubstr(str,-n,StringLen(str)-n)); return(""); } //+------------------------------END---------------------------------+