Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.
-
Content Count
466 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Articles
Everything posted by aaa
-
I use this function but is there a way to round as a fraction ? Round(1.237,2) will return a value of 1.24 1.24 = 1.0 Round(-5.7744,3) will return a value of –5.774 –5.774 = -6.0 7981 instead of 7980.76 or 7981.24 7980,5 instead of 7980.26 or 7980,74 7980 instead of 7980.24 or 7979.76
-
You are kind... It looks great with the extension of the lignes without the old one I was looking at your indicators Your zigzag, price action etc are a good job ThanX a lot
-
--------------------------------------------------------
-
------------------------------------------------
-
Thank you Tams not exactly but This is a really interesting coding indicator. It works like the price channel, one of my preferate indicator. I'm looking for something like this
-
Hello I'd like to round a price like this ; 7980,5 instead of 7980.40 or 7980,60 With Excel there is a way to round a price with a fraction (1/2) Is there something similar in EL ? Thank you
-
Thank you Gus for your information If you find something could you post some code here ?
-
That's what I'm looking for....
-
An other one //+------------------------------------------------------------------+ //| Fibos.mq4 | //| Developed by Coders' Guru | //| http://www.xpworx.com | //+------------------------------------------------------------------+ #property copyright "Coders' Guru" #property link "http://www.xpworx.com" string ver = "Last Modified: 2008.02.22 19:20"; #property indicator_chart_window #property indicator_buffers 7 extern bool Higher_To_Lower = true; //else Lower_To_Higher extern bool DrawVerticalLines = true; extern int StartBar = 0; extern int BarsBack = 20; double f_1[]; double f_2[]; double f_3[]; double f_4[]; double f_5[]; double f_6[]; double f_7[]; void DeleteAllObjects() { int objs = ObjectsTotal(); string name; for(int cnt=ObjectsTotal()-1;cnt>=0;cnt--) { name=ObjectName(cnt); if (StringFind(name,"V_",0)>-1) ObjectDelete(name); if (StringFind(name,"H_",0)>-1) ObjectDelete(name); if (StringFind(name,"f_",0)>-1) ObjectDelete(name); if (StringFind(name,"fib",0)>-1) ObjectDelete(name); if (StringFind(name,"trend",0)>-1) ObjectDelete(name); WindowRedraw(); } } void CalcFibo() { DeleteAllObjects(); int lowest_bar = iLowest(NULL,0,MODE_LOW,BarsBack,StartBar); int highest_bar = iHighest(NULL,0,MODE_HIGH,BarsBack,StartBar); double higher_point = 0; double lower_point = 0; higher_point=High[highest_bar]; lower_point=Low[lowest_bar]; if(DrawVerticalLines) DrawVerticalLine("V_UPPER",highest_bar,Blue); if(DrawVerticalLines) DrawVerticalLine("V_LOWER",lowest_bar,Blue); int i = 0; if(Higher_To_Lower) { for(i = 0; i < 500; i++) { f_1 = higher_point; f_2 = NormalizeDouble(lower_point+(higher_point-lower_point)*0.236,Digits); f_3 = NormalizeDouble(lower_point+(higher_point-lower_point)*0.382,Digits); f_4 = NormalizeDouble(lower_point+(higher_point-lower_point)*0.5,Digits); f_5 = NormalizeDouble(lower_point+(higher_point-lower_point)*0.618,Digits); f_6 = NormalizeDouble(lower_point+(higher_point-lower_point)*1.618,Digits); f_7 = lower_point; } ObjectCreate("fib",OBJ_FIBO,0,0,higher_point,0,lower_point); ObjectCreate("trend",OBJ_TREND,0,Time[highest_bar],higher_point,Time[lowest_bar],lower_point); ObjectSet("trend",OBJPROP_STYLE,STYLE_DOT); ObjectSet("trend",OBJPROP_RAY,false); } else { for(i = 0; i < 500; i++) { f_7 = higher_point; f_6 = NormalizeDouble(lower_point+(higher_point-lower_point)*0.236,Digits); f_5 = NormalizeDouble(lower_point+(higher_point-lower_point)*0.382,Digits); f_4 = NormalizeDouble(lower_point+(higher_point-lower_point)*0.5,Digits); f_3 = NormalizeDouble(lower_point+(higher_point-lower_point)*0.618,Digits); f_2 = NormalizeDouble(lower_point+(higher_point-lower_point)*1.618,Digits); f_1 = lower_point; } DeleteAllObjects(); ObjectCreate("fib",OBJ_FIBO,0,0,lower_point,0,higher_point); ObjectCreate("trend",OBJ_TREND,0,Time[lowest_bar],lower_point,Time[highest_bar],higher_point); ObjectSet("trend",OBJPROP_STYLE,STYLE_DOT); ObjectSet("trend",OBJPROP_RAY,false); } } void DrawVerticalLine(string name , int bar , color clr) { if(ObjectFind(name)==false) { ObjectCreate(name,OBJ_VLINE,0,Time[bar],0); ObjectSet(name,OBJPROP_COLOR,clr); ObjectSet(name,OBJPROP_WIDTH,2); WindowRedraw(); } else { ObjectDelete(name); ObjectCreate(name,OBJ_VLINE,0,Time[bar],0); ObjectSet(name,OBJPROP_COLOR,clr); ObjectSet(name,OBJPROP_WIDTH,2); WindowRedraw(); } } int deinit() { DeleteAllObjects(); return (0); } int init() { DeleteAllObjects(); SetIndexBuffer(0,f_1); SetIndexBuffer(1,f_2); SetIndexBuffer(2,f_3); SetIndexBuffer(3,f_4); SetIndexBuffer(4,f_5); SetIndexBuffer(5,f_6); SetIndexBuffer(6,f_7); return(0); } int start() { CalcFibo(); return(0); }
-
ThanX ZDO for your information I am not good enough to make an indicator I can understand most of an algo and adapt some minor point, no more... Here is one I've found on the net //+------------------------------------------------------------------+ //| #SpudFibo.mq4 - downloaded from ultimaforex.com //+------------------------------------------------------------------+ #property indicator_chart_window extern string note1 = "Fibonacci colors"; extern color UpperFiboColor = Navy; extern color MainFiboColor = RoyalBlue; extern color LowerFiboColor = DodgerBlue; extern string note2 = "Draw main Fibonacci lines?"; extern bool InnerFibs = true; double HiPrice, LoPrice, Range; datetime StartTime; int init() { return(0); } int deinit() { ObjectDelete("FiboUp"); ObjectDelete("FiboDn"); ObjectDelete("FiboIn"); return(0); } //+------------------------------------------------------------------+ //| Draw Fibo //+------------------------------------------------------------------+ int DrawFibo() { if(ObjectFind("FiboUp") == -1) ObjectCreate("FiboUp",OBJ_FIBO,0,StartTime,HiPrice+Range,StartTime,HiPrice); else { ObjectSet("FiboUp",OBJPROP_TIME2, StartTime); ObjectSet("FiboUp",OBJPROP_TIME1, StartTime); ObjectSet("FiboUp",OBJPROP_PRICE1,HiPrice+Range); ObjectSet("FiboUp",OBJPROP_PRICE2,HiPrice); } ObjectSet("FiboUp",OBJPROP_LEVELCOLOR,UpperFiboColor); ObjectSet("FiboUp",OBJPROP_FIBOLEVELS,13); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+0,0.0); ObjectSetFiboDescription("FiboUp",0,"(100.0%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+1,0.236); ObjectSetFiboDescription("FiboUp",1,"(123.6%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+2,0.382); ObjectSetFiboDescription("FiboUp",2,"(138.2%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+3,0.500); ObjectSetFiboDescription("FiboUp",3,"(150.0%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+4,0.618); ObjectSetFiboDescription("FiboUp",4,"(161.8%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+5,0.764); ObjectSetFiboDescription("FiboUp",5,"(176.4%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+6,1.000); ObjectSetFiboDescription("FiboUp",6,"(200.0%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+7,1.236); ObjectSetFiboDescription("FiboUp",7,"(223.6%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+8,1.500); ObjectSetFiboDescription("FiboUp",8,"(250.0%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+9,1.618); ObjectSetFiboDescription("FiboUp",9,"(261.8%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+10,2.000); ObjectSetFiboDescription("FiboUp",10,"(300.0%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+11,2.500); ObjectSetFiboDescription("FiboUp",11,"(350.0%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+12,3.000); ObjectSetFiboDescription("FiboUp",12,"(400.0%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+13,3.500); ObjectSetFiboDescription("FiboUp",13,"(450.0%) - %$"); ObjectSet("FiboUp",OBJPROP_FIRSTLEVEL+14,4.000); ObjectSetFiboDescription("FiboUp",14,"(500.0%) - %$"); ObjectSet("FiboUp",OBJPROP_RAY,true); ObjectSet("FiboUp",OBJPROP_BACK,true); if(ObjectFind("FiboDn") == -1) ObjectCreate("FiboDn",OBJ_FIBO,0,StartTime,LoPrice-Range,StartTime,LoPrice); else { ObjectSet("FiboDn",OBJPROP_TIME2, StartTime); ObjectSet("FiboDn",OBJPROP_TIME1, StartTime); ObjectSet("FiboDn",OBJPROP_PRICE1,LoPrice-Range); ObjectSet("FiboDn",OBJPROP_PRICE2,LoPrice); } ObjectSet("FiboDn",OBJPROP_LEVELCOLOR,LowerFiboColor); ObjectSet("FiboDn",OBJPROP_FIBOLEVELS,19); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+0,0.0); ObjectSetFiboDescription("FiboDn",0,"(0.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+1,0.236); ObjectSetFiboDescription("FiboDn",1,"(-23.6%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+2,0.382); ObjectSetFiboDescription("FiboDn",2,"(-38.2%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+3,0.500); ObjectSetFiboDescription("FiboDn",3,"(-50.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+4,0.618); ObjectSetFiboDescription("FiboDn",4,"(-61.8%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+5,0.764); ObjectSetFiboDescription("FiboDn",5,"(-76.4%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+6,1.000); ObjectSetFiboDescription("FiboDn",6,"(-100.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+7,1.236); ObjectSetFiboDescription("FiboDn",7,"(-123.6%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+8,1.382); ObjectSetFiboDescription("FiboDn",8,"(-138.2%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+9,1.500); ObjectSetFiboDescription("FiboDn",9,"(-150.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+10,1.618); ObjectSetFiboDescription("FiboDn",10,"(-161.8%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+11,1.764); ObjectSetFiboDescription("FiboDn",11,"(-176.4%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+12,2.000); ObjectSetFiboDescription("FiboDn",12,"(-200.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+13,2.500); ObjectSetFiboDescription("FiboDn",13,"(-250.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+14,3.000); ObjectSetFiboDescription("FiboDn",14,"(-300.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+15,3.500); ObjectSetFiboDescription("FiboDn",15,"(-350.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+16,4.000); ObjectSetFiboDescription("FiboDn",16,"(-400.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+17,4.500); ObjectSetFiboDescription("FiboDn",17,"(-450.0%) - %$"); ObjectSet("FiboDn",OBJPROP_FIRSTLEVEL+18,5.000); ObjectSetFiboDescription("FiboDn",18,"(-500.0%) - %$"); ObjectSet("FiboDn",OBJPROP_RAY,true); ObjectSet("FiboDn",OBJPROP_BACK,true); if(InnerFibs) { if(ObjectFind("FiboIn") == -1) ObjectCreate("FiboIn",OBJ_FIBO,0,StartTime,HiPrice,StartTime+PERIOD_D1*60,LoPrice); else { ObjectSet("FiboIn",OBJPROP_TIME2, StartTime); ObjectSet("FiboIn",OBJPROP_TIME1, StartTime+PERIOD_D1*60); ObjectSet("FiboIn",OBJPROP_PRICE1,HiPrice); ObjectSet("FiboIn",OBJPROP_PRICE2,LoPrice); } ObjectSet("FiboIn",OBJPROP_LEVELCOLOR,MainFiboColor); ObjectSet("FiboIn",OBJPROP_FIBOLEVELS,7); ObjectSet("FiboIn",OBJPROP_FIRSTLEVEL+0,0.0); ObjectSetFiboDescription("FiboIn",0,"Daily LOW (0.0) - %$"); ObjectSet("FiboIn",OBJPROP_FIRSTLEVEL+1,0.236); ObjectSetFiboDescription("FiboIn",1,"(23.6) - %$"); ObjectSet("FiboIn",OBJPROP_FIRSTLEVEL+2,0.382); ObjectSetFiboDescription("FiboIn",2,"(38.2) - %$"); ObjectSet("FiboIn",OBJPROP_FIRSTLEVEL+3,0.500); ObjectSetFiboDescription("FiboIn",3,"(50.0) - %$"); ObjectSet("FiboIn",OBJPROP_FIRSTLEVEL+4,0.618); ObjectSetFiboDescription("FiboIn",4,"(61.8) - %$"); ObjectSet("FiboIn",OBJPROP_FIRSTLEVEL+5,0.764); ObjectSetFiboDescription("FiboIn",5,"(76.4) - %$"); ObjectSet("FiboIn",OBJPROP_FIRSTLEVEL+6,1.000); ObjectSetFiboDescription("FiboIn",6,"Daily HIGH (100.0) - %$"); ObjectSet("FiboIn",OBJPROP_RAY,true); ObjectSet("FiboIn",OBJPROP_BACK,true); } else ObjectDelete("FiboIn"); } //+------------------------------------------------------------------+ //| Indicator start function //+------------------------------------------------------------------+ int start() { int shift = iBarShift(NULL,PERIOD_D1,Time[0]) + 1; // yesterday HiPrice = iHigh(NULL,PERIOD_D1,shift); LoPrice = iLow (NULL,PERIOD_D1,shift); StartTime = iTime(NULL,PERIOD_D1,shift); if(TimeDayOfWeek(StartTime)==0/*Sunday*/) {//Add fridays high and low HiPrice = MathMax(HiPrice,iHigh(NULL,PERIOD_D1,shift+1)); LoPrice = MathMin(LoPrice,iLow(NULL,PERIOD_D1,shift+1)); } Range = HiPrice-LoPrice; DrawFibo(); return(0); } //+------------------------------------------------------------------+
-
me again I have the close of yesterday 17:35 until 17:40 where I have the close of the day So the pivot jump and is wrong from 17:40 to 22:00 I don't know how to keep the yesterday price at 17:35 all the day... variables: PP( 0), LastOpen( 0), LastHigh( 0), LastLow( 0), LastClose( 0); Value1 = $OHLCPeriodsAgo(0, 1, LastOpen, LastHigh, LastLow, LastClose ); Value3 = CalcTime( 2200 , -265 ) ; if time = Value3 then Value4 = Close ; PP = Round( ( LastHigh + LastLow + Value4 ) / 3, 2 ); Plot9(PP, "PP");
-
It's so clear now. I'm on the right way Here is the progress of my test I have the close of yesterday 17:35 until 17:40 where I have the close of the day Thanx sevensa //---------------------------------------------------------------------- variables: //---------------------------------------------------------------------- Value1 = CalcTime( 2400 , -385 ); if time = Value1 then Value2 = Close ; value0 = Text_New( Date , Time , Low , "" ) ; Text_SetString( Value0 , NumToStr(Value2 , 0 ) ); //---------------------------------------------------------------------- // Attributs //---------------------------------------------------------------------- Text_SetStyle( value0 , 2 , 0 ); //Hor = 0 = To the right of the bar 1 = To the left of the bar 2 = Centered on the bar //Ver = 0 = Beneath the price 1 = Above the price specified for the text object 2 = Centered on the price Text_SetSize( value0 , 12 ); Text_SetColor( value0 , white );
-
Hello I am a beginner in EL... Is there a free code to draw lignes of the retracements on the right side of the charts when PivotHighVSBar found a new pivot like in the link below? https://www.tradestation.com/Discussions/Topic.aspx?Topic_ID=8864
-
Value1 = CalcTime(0000,-385); This is an interesting function to find the bar at 17:35 but then how to extracte the price ?
-
Hello I am new in EL... I've found this great forum where I learn a lot I need help to choose beetween the Globex close and the cash close each day I enter manually the cash close (17:35) How to calculate automatically the close of the day before at 17:35 ? ThanX inputs: ClotCompense( 3070 ), ClotCompenseChoice( true ); DailyHigh = HighD( 1 ); DailyLow = LowD( 1 ); GlobexClose = CloseD( 1 ); if PlotDailyPts then begin Range = DailyHigh - DailyLow; if ClotCompenseChoice then Begin PP = ( (DailyHigh + DailyLow + ClotCompense) / 3 ) ; End else begin PP = ( (DailyHigh + DailyLow + GlobexClose ) / 3 ) ; End ;