Menu

Jforex normalizedouble

2 Comments

jforex normalizedouble

Forex Stock Exchange Forum:: Expert Advisors on Tue May 12, 9: Expert Advisors are used to automate the trading process and relieve the trader of the routine functions of continuous market monitoring. Many professional traders employ multiple trading systems enabling them to operate in diverse markets and under a variety of environments. Usually they write and test their trading strategies in the well-known analytical packages, such as Strategy runner, MetaStock or TradeStation. With expert advisor there is a way, whereby you can link the signals generated by the trading systems with your real account, and link them in such a way as to be able to track and manage your open positions, placed orders and stops at any given moment. What is an Expert Advisor? An Expert Advisor is able not only to notify the trader of the trading opportunities, but also to automatically make deals in the trading account,sending them directly to the trading server. Writing your own Expert Advisor is very easy: Even is the user is not able to write the rules for his Expert Advisor on his own, he can always engage an acquaintance of his with decent programming skills, who most likely won't need more than an hour to master the rules and write the program. There is a great variety of trading strategies developed by numerous traders for StrategyRunner, MetaStock and TradeStation. Most of these are easily translated into the MQL II language, which allows the user to incorporate the previously accumulated experience. A trader may have an unlimited number of Expert Advisors which can be easily managed through the Navigator window. MetaQuotes Language II MQL II on Tue May 12, 9: MetaQuotes Language II is used to write custom Expert Advisors to automate the trading process management and implement the trader's own strategies. MetaQuotes Language II is easy to learn, use and set up. MQL II language includes a large number of variables used to control the current and past quotes, principal arithmetic and logical operations and features main built-in indicators and commands used for opening and controlling of the positions. In its syntax the language is similar to the EasyLanguage developed by TradeStation Technologies, Inc. The programming code is written using the MetaEditor advisor text editor, which is capable of highlighting different structures of MQL II language in different colors, thus helping the user through the text of the expert system. The built-in editor highlights comments in gray color. To set up and control his operational strategy, a trader maintains a log-file holding information about the generated signals, variables output and the results of executed trades. The current log may be accessed directly from lower "Terminal" window "Journal" tab. To access the directory system of the MQL II language, the MetaQuotes Language Dictionary window is called, either by pressing the Dictionary button or from the Tools menu. The short manual contains the functions split by categories; operations, reserved words etc. Main language structures on Tue May 12, 9: Main language structures As any other language, MQL II has a set of main components constituting its basic structure. These components have to be organized and arranged in a particular way, so as to represent proper statements and expressions. Main object of the language is the data, which may be of 3 types: All the numerical values take the "double" format. Logical data may take "True" or "False" values. A string is a range of characters marked with apostrophes. A character string is also called a text string. Data may be contained in the variables of appropriate types or be represented directly in the source text of the program. A MetaQuotes Language statement is a complete instruction. Statements may contain reserved words, operators, data, variables, expressions or punctuation symbols and always end with a semicolon. Reserved words are the predefined words with specific or special meaning. Operators are the symbols designating specific operations on the data, variables and or expressions. Variables are used to hold numerical, string or logical data. Expression is a combination of reserved words, variables, data and operators having as a result a value of one of the 3 types used in the language: Punctuation symbols are used to represent expressions, define parameters, divide words or rearrange the sequence of computations. Punctuation symbols Character Name Description ; semicolon Ends an instruction in MetaQuotes Language II. Mark the parameters in functions and initializing expressions in the descriptions of variables. Mark the initializing values for variables and arrays in the variable description section. Divides the variables in the variable description section. Divides the numbers in the description of the array lengths. Divides the indices for accessing the array elements. Mark numbers indices for accessing a particular element of an array. Mark the number of the period for accessing the historical data. May be used instead of begin-end. Isolate a range of instructions into a block. Operators Operators are divided into 5 groups: The assigned value may be a result of an expression. Values may also be assigned to array elements. String operator To manipulate text strings, only one operator can be used: It is used to join two normalizedouble. String " " ; Joining strings with numerical and logical values is also permitted. Operands may be not only values, but also the variables of corresponding types holding such values, as well as expressions which, after they are executed, produce such values. Mathematical operators Four main mathematical operations: Examples of mathematical expressions: The logical values obtained as a result of a relative expression are used in the control structures of MetaQuotes Language II. If Free Margin The text strings are compared in lexicographic order, i. When logical values are compared, one should keep in mind that numerical value of the logical value "True" is 1, while the numerical value of the logical value "False" is 0. Logical operators Logical operators enable the user to combine logical values. Logical operators have corresponding reserved words OR, AND, NOT. Last edited by dzonefx on Tue May 12, Reserved words on Tue May 12, 9: MetaQuotes Language II uses several groups of reserved words. Command structures of MetaQuotes Language II on Tue May 12, Variables declaration and description Storage of the temporary data in the process of calculation requires the use of variables. The variables are described in the very beginning of the programme using reserved words Variable, Array, Define and Input. It is allowed to use these words in plural, i. Variables, Arrays, Defines and Inputs. One of these words always starts the variable declaration statement. The difference between these words is the following: However unlike the predefined variables the user variables may be changed in the process of calculation within the programme. Name InitialValue ; where: The initial value defines the type of the variable — numerical, string or logical. Example of declaration of a numerical variable: Counter 0 ; Example of declaration of a string variable: String1 "some string" ; Example of declaration of a logical variable: MyCondition false ; Array declaration syntax: ArrayNamelength InitialValue ; where the array length is denoted by one or several up to four numbers — number[, number [, number [, number]]]. In MetaQuotes Language II arrays may be of one- two- three- or four-element lenghts. In general terms, an array is a set of variables positioned in a row one after the other which may be accessed by using the same name — the array name — and giving the sequential number numbers of the element in an array. Arrays are convenient for holding sequences of data of the same type. A good example of arrays is the historical data of the trading terminal, such as Close, Open, High, Low, Volume. These data are accessed as a singleelement array. For example, Close[ 5 ] is the normalizedouble of Close five periods back. Example of a two-element array may be a simple table where the first measurement is the rows and the second measurement — the columns. Additional user-defined variable declaration syntax: Name InitialNumber ; where: It should be noted that the additional user-defined variables may be of numerical type only. As already mentioned above, the user-defined variables may be modified during the calculation process of the programme. Such modifications will only apply in the current session of the Expert Advisor, until the particular Expert Advisor is deleted from the chart or the operation of the customer terminal ends. When the new session of the Expert Advisor starts, the values of the user-defined variables will be initialized anew. Note that initialization of the all variables "Inputs", "Variables", "Defines", "Arrays" is passed one time only at the first launch of an expert adviser. If you want so that some variable has a specified value at each launch then assign such value explicitly. It is the so-called pre-scheduled termination of the programme. IF-THEN conditional statement The If-Then conditional statement makes it possible to control the sequence of execution of the Expert Advisor instructions. This statement may be written in different ways. The conditional statement can be used to branch the programme. To achieve this, an additional keyword Else is used. Statement; end else begin Statement; Statement; end; or if Condition then begin Statement; Statement; end else Statement; or if Condition then Statement; else begin Statement; Statement; end; It is possible to use nested conditional statements. In general terms, statement may be represented by any legitimate instruction of MetaQuotes Language II, except for variable declarations, because, strictly speaking, a variable declaration is not an executable statement. The WHILE loop The While loop ensures execution of statements contained in the loop body as many times as the loop condition holds true. A loop may be terminated ahead of schedule using the Break statement. An iteration may be stopped using the Continue statement. This statement causes the start of the next iteration of the loop, i. It is reasonable to use Break and Continue in a conditional statement. Break and Continue statements are not obligatory. The FOR loop The For loop ensures execution of statements contained in the loop body a specific number of times. However, if the Bars value is less than 10, the loop breaks earlier, i. The Jforex statement The Break statement ensures an early termination of a For loop or a While loop. The previous example illustrates not only the operation of the loop, but also the use of the Break statement. The Break statement may not be used outside of the loop body. Loops may be nested, and the Break statement terminates only the loop which is closest to it. In other words, a statement breaking an internal loop doesn't break the external loop as well. The CONTINUE statement The Continue statement terminates the iteration of the loop ahead of schedule and starts the execution of the next iteration from the beginning of the loop body. In other words, the statements following the Continue are ignored. However, the value Close[ Counter ] will be printed not more than Bars times. Predefined variables of the trading terminal For greater convenience of the user, some variables of the trading terminal may be accessed from the Expert Advisor. It should be noted that Close, Open, High, Low, Volume, Time are arrays of historical data seriesarrays and allow access of such data over the past periods. Built-in functions MetaQuotes Language II offers a number of functions for the most diverse uses. These include technical indicators, trading functions, time functions, mathematical and trigonometric functions, data conversion and output functions, etc. Any non-zero number of parameters is possible. If pass zero as parameters time and price then all the pictografic symbols will be removed from the chart. If pass zero as one of parameters time or price then such parameter will not be checked and only non-zero parameter will be compared for deleting. If the file earlier was opened, then it should be closed, other was deleting will be failed. There is 'Comma Separated Values' CSV file because data output by FileWrite function is symbolical text but not binary and separated with specified delimiter; "delimiter" — data delimitation symbol. May be passed as numerical value or as text string containing one symbol only. The file pointer is increased by the number of bytes actually read. Output data are separated with delimitation symbol specified at file open. After output the file pointer is increased by the number of bytes actually write and in the most of cases passed to the end of file. If defined global variable does not exist then will return 0 and in the system journal will appear an error message. There is specific custom indicator function. Difference between 2 GetTickCount values allows to estimate expert adviser's processing speed. Custom indicator program is a simple expert adviser written on the MQL II and passed translation Verify button in the MetaEditor. Parameters for this program are passed in the same sequence as they are listed in the 'Inputs' section. Only numerical values can be passed as parameters! For the preparation of the primary and secondary if needed data arrays of the custom indicator are to be used SetIndexValue and SetIndexValue2 functions. It is impossible to use some trade functions, custom indicator or user function call functions in the custom indicator. If zero value returned then no any fractal presented. Otherwise returns "False" value. For text string or for pictografical symbol is used second reference point only, first reference point is ignored. For any horizontal line is used 'price2' value only. For vertical line — 'time2' value. The function used to produce numerical values with other precision format than 4 digits after the decimal point. Any non-zero number of parameters possible. Before using this function, pseudorandom number generator should be set to initial position using the Srand function. If the pseudorandom number generator is to be used, it is set into the initial position once, at the start of the programme. This function still not working. If the specified global variable does not exist then it will be created. Global variables are accessible to any expert advisor. Global variables are kept in the 'gvariables. If some global variable will not used in the period of 2 weeks then this one will be deleted automatically. There is custom indicator program' specific function. This function allows to limit the performance time of the expert advisor. Value is used by default. Special value 0 allows to turn off the control of the quantity of executed instructions, however in purposes of an infinite loop protection the expert advisor will not work more than one second. If the generator is to be used, it is set into the initial position once, at the start of the programme. The best value to be used for initial setting is the number returned by the Time function — in this case the randomness of the sequence generation is increased. Missing data date or time assumes current date or current time. User function program is a simple expert adviser written on the MQL II and passed translation Verify button in the MetaEditor. For the returning of some value is to be used Return function. UserFunction function returns the same value that was set by the Return function in the user function program. Return function is specific for the user function program. Step-By-Step Creation of Simple Expert on Tue May 12, Let's try to create an Expert Advisor running on the standard MACD indicator, with the profit-taking capability, supporting trailing stops and using most safeguards for secure operation. In the example given below the trade is done by opening and controlling a single position. Writing the Expert Advisor description Point the mouse pointer on the Expert Advisors section of the "Navigator" window, press the right button of the mouse and select "Create a new Expert" command in the appearing menu. The "Initializing Wisard" of the Expert Advisor will ask you to enter certain data. In the appearing window we write the name Name of the Expert Advisor — "MACD Sample", the author Author — indicate your name, the link Link — a link to your website, in the notes Notes — "Test example of an MACD-based Expert Advisor". Creating the primary structure of the programme Code of the test Expert Advisor will only occupy several pages, but even such volume is often difficult to grasp, especially in view of the fact that we are not professional programmers — otherwise we wouldn't need this description at all, right? Some idea of the structure of a standard Expert Advisor! Let's take a look at the description given below: Initial data checks - check the chart, number of bars on the chart — check the values of external variables: Setting the internal variables for quick data access 3. Checking the trading terminal — is it void? It turned out to be relatively simple, with only 4 main blocks. Now let's try to generate pieces of code step by step for each section of the structural scheme: Initial data checks This piece of code usually migrates from one Expert Advisor to another with minor changes — it is a practically standard block of checks: If Bars If TakeProfit 2. Setting the internal variables for quick data access In the programme code it is very often necessary to access the indicator values or handle the computed values. To simplify the coding and speed up the access, the data is initially nested within the internal variables. All the variables used by the Expert Advisor will have to be preliminarily described, according to the MetaQuotes Language II description. Therefore we insert the description of these variables at the beginning of the programme: MacdCurrent 0MacdPrevious 0Jforex 0SignalPrevious 0 ; var: MaCurrent 0MaPrevious 0 ; MetaQuotes Language II also introduces the concept of additional user-defined variables which may be set from outside the programme, without any interference with the source source text of the Expert Advisor programme. This feature allows added flexibility. Variable MATrendPeriod is a user-defined variable of this very type. So, we insert the description of this variable in the beginning of the programme. MATrendPeriod 56 ; 3. In our Expert Advisor we only use the current positions and don't handle the delayed orders. If TotalTrades o Checks: Before analyzing the market situation it is advisable to check the status of your account to make sure that there are free funds for opening a position. If FreeMargin exit o is it possible to take a long position BUY? Condition of entry into the long position: MACD is below zero, goes upwards and is crossed by the Signal Line going downwards. This is how we describe it in MQL II note that we operate on the indicator values which were previously saved in the variables: MACDOpenLevel variable is a user-defined variable which may be changed without interfering with the programme text, to ensure greater flexibility. In the beginning of the programme we insert a description of this variable as well as the description of the variable used below. MACDOpenLevel 3MACDCloseLevel 2 ; o is it possible to take a short position SELL? Condition of entry of a short position: MACD is above zero, goes downwards and is crossed by the Signal Line going upwards. The notation is as follows: Cnt 0 ; o if it is a long position: Condition for exiting a long position: MACD is crossed by its Signal Line, MACD being above zero, going downwards and being crossed by the Signal Line going upwards. We set the trailing stop only in case the position already has a profit exceeding the trailing stop level in points, and in case the new level of the stop is better than the previous. Condition for exiting a short position: MACD is crossed by its Signal Line, MACD being below zero, going upwards and being crossed by the Signal Line going downwards. Assembling the resulting code of the programme on Tue May 12, Let's open the Expert Advisor settings using a button or a line in the Properties We are offered a window in which we have to define the external settings of the working parameters: Let's assemble all the code from the previous section: MACDOpenLevel 3 ,MACDCloseLevel 2 ; defines: MATrendPeriod 56 ; var: MacdCurrent 0 ,MacdPrevious 0 ,SignalCurrent 0 ,SignalPrevious 0 ; var: MaCurrent 0 ,MaPrevious 0 ; var: Of course, you can set your own values. Press the Verify button and, if there isn't any error message by the way, you can copy the text from the above programme printout against the grey background right into the MetaEditorpress the Save button to save the Expert Advisor. Testing the Expert Advisor on historical data! We have written the Expert Advisor — now we are impatient to evaluate it by testing it on historical data. Let's open EURUSD, M15 chart, attach the MACD Sample Expert Advisor to the chart using the Attach to a chart command by selecting the MACD Sample line by the mouse pointer in the "Navigator" window, pressing the right mouse button and selecting the command in the appearing menu. After that we go the the Expert Advisor settings, where we can change the predefined external variables Lots, Stop LossTake ProfitTrailing Stopas well as the user-defined variables. To allow the Expert Advisor not only to advise, but also to gamble on the trading account in real-time on its own, you need to activate the Allow Live Trading button. We are normalizedouble to do testing on historical data, though, so we leave the settings unchanged, switch to the Strategy Tester tabactivate the Arrows on the chart tick to be able to see the arrows on the chart and start our test with the Start button: Features of Writing Experts on Tue May 12, Writing and testing experts trading system has a number of features. If there is not enough money at the account the operation of opening a position will end unsuccessfully. And at the same time, when being tested the FreeMargin value must necessarily be above because when being tested one lot price makes SetOrder, CloseOrder, ModifyOrder or DeleteOrderit is recommended to finish the expert program using the Exit instruction, as after completing the operation a seconds-timeout begins which is used for processing trading operations. But for all that, this secondstimeout does not function during the testing it is possible to process several operations one after anotherand, if one does not finish the expert running by executing the Exit instruction after having completed the operation, the testing results can differ from those of the real expert trading. Index in this case is the number of periods necessary to be counted back. When testing an expert only Open, High, Low, Close prices are used. This model of testing is the quickest one. But the results of the testing can differ from those of the real expert trading. When testing an expert the candle development having the 1 point step is simulated. This model of testing is the slowest one. But the results of the testing are identical with those of the real expert trading when keeping the 10 seconds interval between completing trading operations. The MQL II language gives a number of opportunities to display such information. Alert "Free margin is ", FreeMargin ; o The Comment function shows the data defined by the user in the upper left corner of the chart. Print "Total trades are ", TotalTrades, "; Equity is ", Equity, "; Credit is ", Credit ; o The PrintTrade function prints data of selected trade position in the log-file. When you often test experts do not forget to delete log files periodically as they can have a size of several megabytes. This work is so large that the expert will close forcedly with the error of loop detected. It is necessary to note that the expert runs with each price tick and may not work long. But you can perform the preparatory work, for example, initialization of any array, in several movements. For example, in this way: For example, "initvalue", "initvalue2", "initvalue3", etc. This is necessary to know that the previous bar has just been formed. There are several ways: This method can sometimes fail when spooling the history. In this case, it is possible to complicate checking the difference between values being equal to 1. The next way is based on the fact that the value of Volume is formed on the base of the number of ticks having come for each bar, and the first tick means that the value of the bar being newly formed the Volume value is equal to 1: This method can fail when price ticks come too intensively. As a matter of fact, the processing of the price ticks coming is performed in a separate traffic. And if this traffic is occupied during the next tick coming, this coming tick will not be processed to prevent overloading the computing power! In this case, it is possible to complicate the checking using storage of the previous Volume value. The third way is based on the bar opening time: This method is the most effective. It will work under any conditions. The file will be opened first, then the line-by-line reading should be performed. It is presumed that the structure of each line of the file consists of one text variable and one numeric variable. If the number of lines being counted is less than 20 the next portion of 5 lines will be added. Since the pointer of the current position of reading-recording is at the end of the file after the lines have been counted, the recording of the next record will be made to the end of the file, after that the pointer of the current position will be moved to the end of the file. If the record should be done to the end of the file immediately after jforex has been opened it is necessary to use the following function: In the second part of the code the reading of records from the file will be conducted from its very beginning. Features of Writing Custom Indicators and User Functions on Tue May 12, Writing user indicators and functions in trading system has a number of features, as well: For example, call the custom indicator having the parameters listed above will appear as follows: If the function does not have jforex Inputs section it is no use to send the parameters. Or one can use the initial values being applied for describing parameters. For example, call the same custom indicator without parameters will appear as follows: It is defined by the methods of call. The function of custom indicator is called once when recalculation of the whole array of price data. The simple user function is called during the expert program working, i. The function of custom indicator calculation has access to two arrays storing the results of calculation with the help of functions named SetIndexValue, SetIndexValue2, GetIndexValue, GetIndexValue2. And the simple user function has access to these arrays with the help of iCustom function. The function of custom indicator calculation can not call trading functions and functions of call of user functions. User function should be finished with the call of the Return function in order to send the value calculated to the expert-caller. If zero value is significant in any of the custom indicators, it is necessary to use a very small value, for example, 0. It is necessary to note that when displaying the custom indicators in the pop-up prompts, the accuracy of 4 signs after the dot in decimal fraction will be used. Indicator placed in the price chart can not have negative data as they can not be displayed in any case. That is why negative values of the indicator placed in the price chart will also be considered as special ones. The features of use of special values of custom indicators being placed in the price chart are discussed below. It means, all values will be stored between initializations! When custom indicator is programmed in a proper and accurate way it is possible to provide the possibility of calculation of only last, not calculated values, data arrays of the indicator. An example of an indicator of a simple moving average: MAPeriod 13 ; Variables: In the first variable after initialization the True value is stored. As soon as the indicator runs for the first time the check of the first variable will be conducted and the value of the loopbegin variable will be established on the assumption that the cycle would run from the data beginning. When the cycle is running the loopbegin variable is modified and contents in fact the value of the index of the last value calculated in the indicator array. In the case of "loop detected", the indicator expert will stop its work. But the first variable is established in False, it means that at the next start the loopbegin variable will not be established at the beginning of the indicator array. It means that the new calculation will be continued from the point where the previous calculation has been made. At the end, all the bars will be calculated. But if we need to recalculate the indicator value at the current bar with the coming of each new quote we modify the loopbegin variable before the cycle starts, increasing it by 1 to realize at least 1 cycle iteration. If the historical data were spooled Refresh Chart or reloaded Erase and Refresh Chart the condition of the comparing of the current number of bars with the previous number of those would allow us to recalculate indicator on all data. In this connection, there are several features of designing such a program. An example of the "Envelopes" indicator: CurrentBar 0 ,shift 0 ,i 0 ,sum 0 ,UpperBand 0 ,LowerBand 0 ,BeginBar 0 ; Vars: If the values calculated with the custom indicator differ from the current prices very much, the indicator chart must be shown in a separate window. It is also possible to develop a histogram Histogram or to show a separate symbol Symbol; in this case, the symbol will be set as a number defining the position of the symbol in the "Wingdings" table. For example, First Symbol: MACD histogram and signal line. First Color, First Draw Type and First Symbol belong to the first indicator chart, the Second Color, Second Draw Type and Second Symbol belong to the second one. Experts Master will, for example, design it, as follows: There is a feature of displaying the histogram in the price chart window. Both data arrays of the Custom Indicator participate in the process of histogram displaying. The line will be drawn at the chart from the first value to the second corresponding one. If the first value is more than the second one the line will be drawn with the first color. Otherwise, it will be drawn with the second color. This feature can be used when coloring the bars with different colors. If necessary, it is possible to prepare another program of custom indicator to color bars with two other colors corresponding with other conditions. The line will be plotted between points having positive values. A negative value means the end of the previous line. As an illustration of the "absence of data" an example of the "ZigZag" indicator is given below which plots lines between local price extremes. The values between extremes are zero values. The lines are drawn between extremes i. Before using the function, it is necessary to be sure that it has been successfully translated, and that there is a corresponding exp-file in the expert catalogue. Technical Indicators on Sat Jun 13, 8: The values obtained are used for prediction of price changes. There is a large amount of developed technical indicators in the world, some of them are represented in FXDirectDealer: The volume represents the weighting factor at the price changing: The indicator was developed by Larry Williams and represents the accumulation of the difference between all movements upward accumulation during the days, when the price has arisen by the closing point, and downward distribution during the days, when the price has fallen by the closing point. This indicator gives rather infrequent signals forming divergence with the price at the critical breaks of tendencies. ADX Average Directional Movement Index on Sat Jun 13, 8: Average Directional Movement Index ADX is the indicator developed by Wells Wilder for measuring the intensity of normalizedouble trend. It is considered that if ADX goes up and exceeds 15 the trend is observed in the market. Average True Range ATR on Sat Jun 13, 9: Average True Range ATR is the indicator of volatility of the market. It was introduced by Wells Wilder in his book New Concepts of Technical Trading Systems, and since then the indicator is applied as a constituent of many other indicators and trading systems. ATR often reaches high values in the market foundations after sheer fall in prices caused with panic selling. Low values of the indicator often correspond with long periods of horizontal movement being observed in the market summits and during the consolidation time. It can be interpreted by the same rules as other volatility indicators. The principle of prediction with the help of this indicator is formulated as follows: Bollinger Bands on Sat Jun 13, 9: Bollinger Bands are similar to moving average envelopes. The difference between them consists in that the margins of envelopes are positioned above and below the moving average curve at the fixed distance expressed as percentage, whereas the margins of Bollinger Bands are based on distances equal to a certain amount of standard deviations. Inasmuch as the value of the standard deviation depends on volatility, the bands regulate their own width: Bollinger Bands are usually plotted in the price chart, but they can also be plotted in the indicator chart. All mentioned below concerns the bands plotted in price charts. Like in the case of envelope moving averages, the Bollinger Bands interpretation is based on that it is inherent to the prices to stay in the range of highest and lowest margins of the band. A distinctive feature of Bollinger Bands is their variable width determined with the volatility of prices. In the periods of significant price changes i. In the economic glut periods i. The latter observation is useful for predicting price guideposts. Commodity Channel Index CCI on Sat Jun 13, 9: Commodity Channel Index CCI measures the deviation of the commodity price from its average statistical price. High values of the index point out that the price is unusually high being compared with the average one, and low values show that the price is too low. In spite of its name, the CCI can be applied for any financial instrument, and not only for the wares. There are two basic techniques of using CCI: The divergence appears when the price reaches a new maximum, and CCI can not grow above the previous maximums. This classical divergence is normally followed by the price correction. DeMarker on Sat Jun 13, 9: The DeMarker indicato r registers the regions of price depletion which usually coincide with the peaks and troughs of prices. The indicator varies between 0 and 1. When indicator is below the 0. When the indicator is above 0. Elder-rays on Sat Jun 13, 9: The Elder-rays combine the properties of trend following indicators and oscillators. They use exponential moving average indicator EMA, the best period is 13 as a tracing indicator. The oscillators reflect the power of bulls and bears. To plot the Elder-rays three charts should be used: Elder-rays are used both individually and together with other methods. If using them individually, one should take into account that the EMA slope determines the trend movement, and position should be opened in its direction. The following positions should be opened: At the positive values of the Bears Power oscillator, it is better to keep back. Do not open short positions when the Bulls Power oscillator is negative. Divergence between the Bulls and Bears Power and prices is the best time for trading. Envelopes on Sat Jun 13, 9: The Envelopes are formed with two moving averages one of which is shifted upward and another one is shifted downward. The selection of optimum relative number of band margins shifting is determined with the market volatility: Envelopes define the upper and the lower margins of the price range. Force Index on Sat Jun 13, 9: The Force Index was developed by Alexander Elder. This index measures the Bulls Power at each increase, and the Bulls Power at each decrease. It connects the basic elements of market information: This index can be used as it is, but it is better to approximate it with the help of moving average. Approximation with the help a short moving average the author proposes to use 2 intervals contributes to finding the best opportunity to open and close positions. If the approximations is made with long moving average period 13the index shows the tendencies and their changes. Ichimoku Kinko Hyo on Sat Jun 13, 9: Ichimoku Kinko Hyo is predefined to characterize the market trend, support and opposition levels, and to generate signals of buying and selling. This indicator works best at week and day charts. When defining the dimension of parameters, four time intervals of different length are used. The values of individual lines composing this indicator are based on these intervals: Chinkou Span shows the closing price of the current candle shifted backwards by the value of the second time interval. The distance between the Senkou lines is hatched with another color and called 'cloud'. If the price is between these lines, the market should be considered as non-trend, and then the cloud margins form the support and opposition levels. If the price is above the cloud, its upper line forms the first support level, and the second line forms the second support level. If the price is below cloud, the lower line forms the first opposition level, and the upper one forms the second level. If the "Chinkou Span" line traverses the price chart in the bottom-up direction it is signal to buy. If the "Chinkou Span" line traverses the price chart in the top-down direction it is signal to sell. If the price is higher than this indicator, the prices will probably continue to increase. When the price traverses this line the further trend changing is possible. Another kind of using the "Kijun-sen" is giving signals. Signal to buy is generated when the "Tenkan-sen" line traverses the "Kijun-sen" in the bottom-up direction. Top-down direction is the signal to sell. If this line increases or decreases, the trend exists. When it goes horizontally, it means that the market has come into the channel. It shows the ratio between two moving averages of the price. The MACD is developed as the difference between two exponential moving averages EMA having periods of 12 and 26 days. To define the best opportunities for buying or selling clearly, the so called signal line normalizedouble be plotted in the MACD chart: MACD is the most effective under conditions when the market swings with high amplitude in trading. Market Facilitation Index BW MFI on Sat Jun 13, 9: Absolute values of the indicator do not mean anything as they are, only indicator changes have sense. Bill Williams emphasizes the interchanging of MFI and volume: It means the market participants are not interested anymore. It is most likely, that the market is not supported with the volume from clients, and the price is changing due to traders' brokers and dealers "on the floor" speculations. This is the battle between bulls and bears where the volume of buying and selling is large, but movements of the price itself are insignificant as a result of powers being approximately equal. One of the fighting parties buyers against sellers will win. Usually, the break of such a bar lets you know if this bar determines the continuation of the trend or annuls the trend. Bill Williams calls such bar "curtsying". Momentum on Sat Jun 13, 9: The Momentum indicator measures the value of the commodity price change during a certain period. These are the basic methods of use this indicator: In this case, the signal to buy appears if the indicator makes trough and begins to grow; the signal to sell appears if it comes up to its peak and turns downwards. To define the turning points of the indicator it is better to use its short moving average. The extremely high or low values of the "Momentum" indicator presume that the current tendency will continue. So, if the indicator reaches the extremely high values and then turns downwards, the coming price increasing should be expected. This method is based on the presuming that the final phase of upward tendency is usually accompanied with sheer price increase since everybody believes jforex it will continueand the closing of the bears' market is usually accompanied with sheer fall in prices since everybody seeks after leaving the market. This happens very often in this way, but it is still a too sweeping generalization. HotForex news and promotion Today at 3: Technical News Gdmfx Brokerage Daily Today at 3: Forex Optimum Today at 2: HF - Market Analysis and News Today at 1: Daily Technical Analysis by FxGrow Today at Tifia Daily Market Analytics Today at Gold Price Per Gram Today at Gold Price Per Ounce Today at Best forex broker for beginner Today at What exactly is a Forex Signal? BINARY OPTIONS VS FOREX TRADE Yesterday at 3: Fri Jun 16, 8: One Hot Stock Picks! Fri Jun 16, 7: Hot Stocks Signals Fri Jun 16, 7: CUBE signal i InstaForex realni test Thu Jun 15, 8: NPBFX Analytics Wed Jun 14, 4: FreshForex company Mon Jun 12, Mon Jun 12, 8: Broker for newbies Mon Jun 12, 8: Popular long term misconceptions about Forex trading Mon Jun 12, 8: An amateur forex trader. Free Create trading robots for MT4 with StrategyQuant. What's new in JForex Trading Platform. Trading on Forex,CFDs and Binary Options carries a high level of risk and it is not suitable for all investors. There is always a possibility of losing some or all of your initial investment, so you should not invest money which you can't afford to lose. Eventhough we Forex Stock Exchange Forum -fxsforexsrbijaforum. Any opinions, news, research, analyzes, prices or other information contained on this website is provided as general market commentary and does not constitute investment advice. Forex Stock Exchange FORUM will not accept liability for any losses, which may arise directly or indirectly using information from our website. Read a whole risk warning! Gold Price Per Ounce. Gold Price Per Gram. Daily Technical Analysis by FxGrow. Forex Analysis by LiteForex. HF - Market Analysis and News.

MQL5 Tutorial - Simple External Signals In A File

MQL5 Tutorial - Simple External Signals In A File

2 thoughts on “Jforex normalizedouble”

  1. alimka says:

    Without the three-part thesis statement, your ideas can expand more freely and incorporate ideas that might not fit exactly into the three parts.

  2. Aleksey says:

    This Site and all information contained here including, but not limited to, news stories, photographs, video, charts, graphs and graphics is the property of the Los Alamos Daily Post, unless otherwise noted.

Leave a Reply

Your email address will not be published. Required fields are marked *

inserted by FC2 system