//+------------------------------------------------------------------+ //| #MarketPrice.mq4 | //| ServerUang | //| http://www.indofx-trader.net/ | //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| BS_#MarketPrice.mq4 | //| *********** edited by masemus | //+------------------------------------------------------------------+ #property copyright "ServerUang" #property link "http://www.indofx-trader.net/" #property indicator_chart_window extern string Indicator_Name = "BS_#MarketPrice"; extern bool Right_Top = true; extern int Shift_Y = 0; extern int Shift_X = 0; // Untuk menentukan Warna Harga sesuai arah Trend extern string Price_Variable = "Setting for Price Color" ; // change extern color Price_color_Up = Blue; extern color Price_color_Dn = Red; extern int Time_Frame=15; extern int MA_Fast_Period = 1; extern int MA_Fast_Method = 0; extern int MA_Fast_Apply_To = 0; extern int MA_Fast_Shift = 0; extern int MA_Slow_Period = 4; extern int MA_Slow_Method = 0; extern int MA_Slow_Apply_To = 0; extern int MA_Slow_Shift = 0; extern string Value_Color ="Setting for Value Color"; extern color Highest_Color = White; extern color Distance_from_Highest_Color = Gainsboro; extern color Lowest_Color = Yellow; extern color Distance_from_Lowest_Color = Gold; extern color Hi_to_Lo_Color = White; extern color Daily_Av_Up_Color = Lime; extern color Daily_Av_Dn_Color = Orange; extern color Time_n_Spread_Color = Aqua; extern color PipsToOpen_Up_Color = LightSkyBlue; extern color PipsToOpen_Dn_Color = Salmon; extern string Xtra_Information = "Setting for Extra information"; extern bool Show_Xtra_Info = true; extern color Label_color = Silver; extern color Text_Xtreme_Up_Color = White; extern color Text_Up_Color = LightBlue; extern color Text_Dn_Color = Orange; extern color Text_Xtreme_Dn_Color = Yellow; // Untuk menentukan arah Trend extern string Trend_Variable = "Variable TRend Direction" ; // change extern int xMA_Fast_Period = 1; extern int xMA_Fast_Method = 0; extern int xMA_Fast_Apply_To = 0; extern int xMA_Fast_Shift = 0; extern int xMA_Slow_Period = 20; extern int xMA_Slow_Method = 0; extern int xMA_Slow_Apply_To = 0; extern int xMA_Slow_Shift = 0; extern color Trend_Up_Color = Blue; extern color Trend_Dn_Color = Red; //================================================================================= string Label_Teks="", Huruf="", Teks="", nomor=""; double Nilai, x, y, d_A, d_B, TF, Range, bbP, bbMid, bbM, nilaiWarnaCandle; color WarnaHarga, WarnaTrend, WarnaCandle; int Ukuran, n, Kolom; // --- variabel Daili_Av -------------------------------------------- int R1, R5, R10, R20, RAvg, i; string Teks_ReRata = "", Teks_Rerata_Kemarin ="", Nomor=""; color Warna_ReRata; // --- Variabel Time for next candle string Teks_Menit, Teks_Detik; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- ObjectsDeleteAll(0,OBJ_HLINE); ObjectsDeleteAll(0,OBJ_TEXT); ObjectsDeleteAll(0,OBJ_LABEL); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { //---- int counted_bars=IndicatorCounted(); //Menampilkan Harga Nilai=iMA(Symbol(),0,1,0,MODE_EMA,PRICE_CLOSE,0); Teks=DoubleToStr(Nilai,Digits); Huruf="Arial"; Ukuran=18; x=5+Shift_X; y=5+Shift_Y; // WarnaHarga=WarnaLampu pada trend TF 5 menit d_B = iMA(Symbol(),Time_Frame,MA_Fast_Period,MA_Fast_Shift,MA_Fast_Method,MA_Fast_Apply_To,0); d_A = iMA(Symbol(),Time_Frame,MA_Slow_Period,MA_Slow_Shift,MA_Slow_Method,MA_Slow_Apply_To,0); WarnaHarga=CheckWarna(d_B, d_A, Price_color_Up, Price_color_Dn); Tulis("MP01", Right_Top, x, y, Teks, Ukuran, Huruf, WarnaHarga); Huruf="Tahoma Bold"; Ukuran=10; d_A=iHigh(NULL,1440,0); Teks=DoubleToStr(d_A, Digits); d_B=iLow(NULL,1440,0); Teks=DoubleToStr(d_B, Digits); //--- Informasi Hi to Lo --- Teks=DoubleToStr((d_A - d_B)/Point,0); x=40+Shift_X; y=5+Shift_Y; Tulis("MP06", Right_Top, x, y, Teks, Ukuran, Huruf, Hi_to_Lo_Color); Tulis("MP22", Right_Top, x-11, y+0, " Curr: ", 7, Huruf, Label_color); //--- Informasi Daily Av --- R1=0; R5=0; R10=0; R20=0; RAvg=0; i=0; R1 = (iHigh(NULL,PERIOD_D1,1)-iLow(NULL,PERIOD_D1,1))/Point; for(i=1;i<=5;i++) R5 = R5 + (iHigh(NULL,PERIOD_D1,i)-iLow(NULL,PERIOD_D1,i))/Point; for(i=1;i<=10;i++) R10 = R10 + (iHigh(NULL,PERIOD_D1,i)-iLow(NULL,PERIOD_D1,i))/Point; for(i=1;i<=20;i++) R20 = R20 + (iHigh(NULL,PERIOD_D1,i)-iLow(NULL,PERIOD_D1,i))/Point; R5 = R5/5; R10 = R10/10; R20 = R20/20; RAvg = (R1+R5+R10+R20)/4; Teks_ReRata = (DoubleToStr(RAvg,Digits-4)); Teks_Rerata_Kemarin = (iHigh(NULL,PERIOD_D1,1)-iLow(NULL,PERIOD_D1,1))/Point; if (Teks_ReRata > Teks_Rerata_Kemarin) {Warna_ReRata = Daily_Av_Up_Color;} else {Warna_ReRata = Daily_Av_Dn_Color;} x=40+Shift_X; y=45+Shift_Y; Tulis("MP07", Right_Top, x, y, Teks_ReRata, Ukuran, Huruf, Warna_ReRata); Tulis("MP23", Right_Top, x-11, y+0, " D.Av: ", 7, Huruf, Label_color); //Time for Next Candle d_B = (Time[4]-Time[5])-MathMod(CurTime(),Time[4]-Time[5]); d_A = d_B/60; d_B = (d_A-MathFloor(d_A))*60; d_A = MathFloor(d_A); Teks_Menit = DoubleToStr(d_A,0); Teks_Detik = DoubleToStr(d_B,0); Teks=Teks_Menit+":"+Teks_Detik; x=185+Shift_X; y=5+Shift_Y; Tulis("MP08", Right_Top, x, y, Teks, Ukuran, Huruf, Time_n_Spread_Color); Tulis("MP24", Right_Top, x-11, y+0, " Time : ", 7, Huruf, Label_color); // --- Spread d_A = (Ask - Bid)/Point; Teks = (DoubleToStr(d_A,Digits-4)); x=68+Shift_X; y=45+Shift_Y; Tulis("MP09", Right_Top, x, y, Teks, Ukuran, Huruf, Time_n_Spread_Color); Tulis("MP25", Right_Top, x-11, y+0, " Sprd: ", 7, Huruf, Label_color); //--- Informasi from Pips to Open --- d_A = iOpen(NULL,1440,0); d_B = iClose(NULL,1440,0); WarnaHarga=CheckWarna(d_B, d_A, PipsToOpen_Up_Color, PipsToOpen_Dn_Color); Teks=DoubleToStr((d_B-d_A)/Point,0); x=68+Shift_X; y=5+Shift_Y; Tulis("MP10", Right_Top, x, y, Teks, Ukuran, Huruf, WarnaHarga); Tulis("MP26", Right_Top, x-11, y+0, " To Op: ", 7, Huruf, Label_color); //--- Show_Xtra_Info --- if (Show_Xtra_Info) {//--- Info TRend --- Huruf="Trebucet"; Ukuran=7; if (Right_Top) {Teks="BS TR";} else {Teks="TR BS";} x=156+Shift_X; y=3+Shift_Y+4; Tulis("MP11", Right_Top, x, y, Teks, Ukuran, Huruf, Label_color); Tulis("MP12", Right_Top, x-66, y+32, " 240 ", Ukuran, Huruf, Label_color); Tulis("MP13", Right_Top, x-55, y+32, " 60 ", Ukuran, Huruf, Label_color); Tulis("MP14", Right_Top, x-44, y+32, " 30 ", Ukuran, Huruf, Label_color); Tulis("MP15", Right_Top, x-33, y+32, " 15 ", Ukuran, Huruf, Label_color); Tulis("MP16", Right_Top, x-22, y+32, " 5 ", Ukuran, Huruf, Label_color); Tulis("MP17", Right_Top, x-11, y+32, " 1 ", Ukuran, Huruf, Label_color); n=1; while (n<=6) { switch (n) { case 1: TF = 1; Range=2; break; case 2: TF = 5; Range=(Ask - Bid)/Point; break; case 3: TF = 15; Range=(Ask - Bid)/Point; break; case 4: TF = 30; Range=(Ask - Bid)/Point; break; case 5: TF = 60; Range=(Ask - Bid)/Point; break; case 6: TF = 240; Range=(Ask - Bid)/Point; break; //case 7: TF = 1440; break; }//switch nomor=DoubleToStr(n,0); x=125+Shift_X; y=23+Shift_Y+5; Kolom=11; Huruf="Arial Bold"; Ukuran=40; d_B = iMA(Symbol(),TF, xMA_Fast_Period, xMA_Fast_Shift, xMA_Fast_Method, xMA_Fast_Apply_To,0); d_A = iMA(Symbol(),TF, xMA_Slow_Period, xMA_Slow_Shift, xMA_Slow_Method, xMA_Slow_Apply_To,0); WarnaTrend=CheckWarna(d_B, d_A, Trend_Up_Color, Trend_Dn_Color); Tulis("MP18"+nomor, Right_Top, x-(n*Kolom), y-23, "-", Ukuran, Huruf, WarnaTrend); //BuySeLL d_B = iMA(Symbol(),TF, 1, 0, 0, 0, 0); d_A = iMA(Symbol(),TF, 4, 0, 0, 0, 0); WarnaTrend=CheckWarna(d_B, d_A, Trend_Up_Color, Trend_Dn_Color); Tulis("MP19"+nomor, Right_Top, x-(n*Kolom), y-5, "-", Ukuran, Huruf, WarnaTrend); //Huruf="Tahoma Narrow"; Ukuran=7; x=10+Shift_X; y=88+Shift_Y+44; //Tulis("MP20", Right_Top, x, y, "Created by ServerUang", Ukuran, Huruf, Gray); n++; }//while }//Show else { Huruf="Tahoma Narrow"; Ukuran=7; x=10+Shift_X; y=88+Shift_Y+4; Tulis("MP21", Right_Top, x, y, "Created by ServerUang", Ukuran, Huruf, Gray); } //---- return(0); } //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ // Prosedur Tulis void Tulis(string LBL, double sebelah, int pos_x, int pos_y, string teks, int ukuran_huruf, string nama_huruf, color warna=CLR_NONE) { Label_Teks=LBL; ObjectCreate(LBL, OBJ_LABEL, 1, 0, 0); ObjectSetText(LBL,teks, ukuran_huruf, nama_huruf, warna); ObjectSet(LBL, OBJPROP_CORNER, sebelah); ObjectSet(LBL, OBJPROP_XDISTANCE, pos_y); ObjectSet(LBL, OBJPROP_YDISTANCE, pos_x); } // Function CheckWarna color CheckWarna(double a, double b, color U, color D) { if (a>b) { return (U); } else { return (D); } }