FunctionZigZagMultipleMethodsLibrary   "FunctionZigZagMultipleMethods" 
ZigZag Multiple Methods.
 method(idx)  Helper methods enumeration.
  Parameters:
     idx : int, index of method, range 0 to 4.
  Returns: string
 function(method, value_x, value_y)  Multiple method ZigZag.
  Parameters:
     method : string, default='(MANUAL) Percent price move over X * Y', method for zigzag.
     value_x : float, x value in method.
     value_y : float, y value in method.
  Returns: tuple with:
zigzag float
direction
reverse_line float
realtimeofpivot int
Timesessions
arsenalLibrary   "arsenal" 
This library is a collection of weapons that will help us win the war against the market.
 isNewbar(res, timezone)  Checks if the res is in new bar at the current timeframe
  Parameters:
     res : - resolution of the bar to check if new
     timezone : - timezone of the resolution
  Returns: ch: - 1=true, 0=false
SessionInfoLibrary   "SessionInfo" 
Utility functions for session specific information like the bar index of the session.
 inSession(spec)  Returns true if the current bar is in the session specification.
  Parameters:
     spec : session.regular (default), session.extended or other time spec.
  Returns: True if the current is in session; otherwise false.
 minutesToLen(minutes, multiple)  Converts the number of minutes to a length to be used with indicators.
  Parameters:
     minutes : The number of minutes.
     multiple : The length multiplier.
  Returns: math.ceil(minutes * multiple / timeframe.multiplier)
 bar(spec, res)  Returns the intraday bar index.  May not always map directly to time as a bars can be skipped.
  Parameters:
     spec : session.regular (default), session.extended or other time spec.
     res : The resolution (default = "1440").
  Returns: The integer index of the bar of the session.
 isFirstBar(spec, res)  Returns true if the current bar is the first one of the session.
  Parameters:
     spec : session.regular (default), session.extended or other time spec.
     res : The resolution (default = "1440").
  Returns: True if the current bar is the first one of the session.
 wasLastBar(spec, res)  Returns Returns true if the previous bar was the last of the session.
  Parameters:
     spec : session.regular (default), session.extended or other time spec.
     res : The resolution (default = "1440").
  Returns: True if was the last bar of the session.
ZenLibraryLibrary   "ZenLibrary" 
A collection of custom tools & utility functions commonly used with my scripts.
 getDecimals()  Calculates how many decimals are on the quote price of the current market
  Returns: The current decimal places on the market quote price
 truncate(float, float)  Truncates (cuts) excess decimal places
  Parameters:
     float : _number The number to truncate
     float : _decimalPlaces (default=2) The number of decimal places to truncate to
  Returns: The given _number truncated to the given _decimalPlaces
 toWhole(float)  Converts pips into whole numbers
  Parameters:
     float : _number The pip number to convert into a whole number
  Returns: The converted number
 toPips(float)  Converts whole numbers back into pips
  Parameters:
     float : _number The whole number to convert into pips
  Returns: The converted number
 av_getPositionSize(float, float, float, float)  Calculates OANDA forex position size for AutoView based on the given parameters
  Parameters:
     float : _balance The account balance to use
     float : _risk The risk percentage amount (as a whole number - eg. 1 = 1% risk)
     float : _stopPoints The stop loss distance in POINTS (not pips)
     float : _conversionRate The conversion rate of our account balance currency
  Returns: The calculated position size (in units - only compatible with OANDA)
 getMA(int, string)  Gets a Moving Average based on type
  Parameters:
     int : _length The MA period
     string : _maType The type of MA
  Returns: A moving average with the given parameters
 getEAP(float)  Performs EAP stop loss size calculation (eg. ATR >= 20.0 and ATR < 30, returns 20)
  Parameters:
     float : _atr The given ATR to base the EAP SL calculation on
  Returns: The EAP SL converted ATR size
 barsAboveMA(int, float)  Counts how many candles are above the MA
  Parameters:
     int : _lookback The lookback period to look back over
     float : _ma The moving average to check
  Returns: The bar count of how many recent bars are above the MA
 barsBelowMA(int, float)  Counts how many candles are below the MA
  Parameters:
     int : _lookback The lookback period to look back over
     float : _ma The moving average to reference
  Returns: The bar count of how many recent bars are below the EMA
 barsCrossedMA(int, float)  Counts how many times the EMA was crossed recently
  Parameters:
     int : _lookback The lookback period to look back over
     float : _ma The moving average to reference
  Returns: The bar count of how many times price recently crossed the EMA
 getPullbackBarCount(int, int)  Counts how many green & red bars have printed recently (ie. pullback count)
  Parameters:
     int : _lookback The lookback period to look back over
     int : _direction The color of the bar to count (1 = Green, -1 = Red)
  Returns: The bar count of how many candles have retraced over the given lookback & direction
 getBodySize()  Gets the current candle's body size (in POINTS, divide by 10 to get pips)
  Returns: The current candle's body size in POINTS
 getTopWickSize()  Gets the current candle's top wick size (in POINTS, divide by 10 to get pips)
  Returns: The current candle's top wick size in POINTS
 getBottomWickSize()  Gets the current candle's bottom wick size (in POINTS, divide by 10 to get pips)
  Returns: The current candle's bottom wick size in POINTS
 getBodyPercent()  Gets the current candle's body size as a percentage of its entire size including its wicks
  Returns: The current candle's body size percentage
 isHammer(float, bool)  Checks if the current bar is a hammer candle based on the given parameters
  Parameters:
     float : _fib (default=0.382) The fib to base candle body on
     bool : _colorMatch (default=false) Does the candle need to be green? (true/false)
  Returns: A boolean - true if the current bar matches the requirements of a hammer candle
 isStar(float, bool)  Checks if the current bar is a shooting star candle based on the given parameters
  Parameters:
     float : _fib (default=0.382) The fib to base candle body on
     bool : _colorMatch (default=false) Does the candle need to be red? (true/false)
  Returns: A boolean - true if the current bar matches the requirements of a shooting star candle
 isDoji(float, bool)  Checks if the current bar is a doji candle based on the given parameters
  Parameters:
     float : _wickSize (default=2) The maximum top wick size compared to the bottom (and vice versa)
     bool : _bodySize (default=0.05) The maximum body size as a percentage compared to the entire candle size
  Returns: A boolean - true if the current bar matches the requirements of a doji candle
 isBullishEC(float, float, bool)  Checks if the current bar is a bullish engulfing candle
  Parameters:
     float : _allowance (default=0) How many POINTS to allow the open to be off by (useful for markets with micro gaps)
     float : _rejectionWickSize (default=disabled) The maximum rejection wick size compared to the body as a percentage
     bool : _engulfWick (default=false) Does the engulfing candle require the wick to be engulfed as well?
  Returns: A boolean - true if the current bar matches the requirements of a bullish engulfing candle
 isBearishEC(float, float, bool)  Checks if the current bar is a bearish engulfing candle
  Parameters:
     float : _allowance (default=0) How many POINTS to allow the open to be off by (useful for markets with micro gaps)
     float : _rejectionWickSize (default=disabled) The maximum rejection wick size compared to the body as a percentage
     bool : _engulfWick (default=false) Does the engulfing candle require the wick to be engulfed as well?
  Returns: A boolean - true if the current bar matches the requirements of a bearish engulfing candle
 timeFilter(string, bool)  Determines if the current price bar falls inside the specified session
  Parameters:
     string : _sess The session to check
     bool : _useFilter (default=false) Whether or not to actually use this filter
  Returns: A boolean - true if the current bar falls within the given time session
 dateFilter(int, int)  Determines if this bar's time falls within date filter range
  Parameters:
     int : _startTime The UNIX date timestamp to begin searching from
     int : _endTime the UNIX date timestamp to stop searching from
  Returns: A boolean - true if the current bar falls within the given dates
 dayFilter(bool, bool, bool, bool, bool, bool, bool)  Checks if the current bar's day is in the list of given days to analyze
  Parameters:
     bool : _monday Should the script analyze this day? (true/false)
     bool : _tuesday Should the script analyze this day? (true/false)
     bool : _wednesday Should the script analyze this day? (true/false)
     bool : _thursday Should the script analyze this day? (true/false)
     bool : _friday Should the script analyze this day? (true/false)
     bool : _saturday Should the script analyze this day? (true/false)
     bool : _sunday Should the script analyze this day? (true/false)
  Returns: A boolean - true if the current bar's day is one of the given days
 atrFilter(float, float)  Checks the current bar's size against the given ATR and max size
  Parameters:
     float : _atr (default=ATR 14 period) The given ATR to check
     float : _maxSize The maximum ATR multiplier of the current candle
  Returns: A boolean - true if the current bar's size is less than or equal to _atr x _maxSize
 fillCell(table, int, int, string, string, color, color)  This updates the given table's cell with the given values
  Parameters:
     table : _table The table ID to update
     int : _column The column to update
     int : _row The row to update
     string : _title The title of this cell
     string : _value The value of this cell
     color : _bgcolor The background color of this cell
     color : _txtcolor The text color of this cell
  Returns: A boolean - true if the current bar falls within the given dates
LibraryCheckNthBarLibrary   "LibraryCheckNthBar" 
TODO: add library description here
 canwestart(UTC, prd)  this function can be used if current bar is in last Nth bar
	Parameters:
 	 UTC : is UTC of the chart
	 prd : is the length of last Nth bar 
	Returns: true if the current bar is in N bar
FunctionDaysInMonthLibrary   "FunctionDaysInMonth" 
Method to find the number of days in a given month of year.
 days_in_month(year, month)  Method to find the number of days in a given month of year.
  Parameters:
     year : int, year of month, so we know if year is a leap year or not.
     month : int, month number.
  Returns: int
FunctionDatestringLibrary   "FunctionDatestring" 
Methods to stringify date/time, altho there is already builtin support for it.
 datetime(unixtime)  a stringified date stamp at specified unix time.
	Parameters:
 	 unixtime : int unix timestamp. 
	Returns: string
 date_(unixtime)  a stringified date stamp at specified unix time.
	Parameters:
 	 unixtime : int unix timestamp. 
	Returns: string
 time_(unixtime)  a stringified date stamp at specified unix time.
	Parameters:
 	 unixtime : int unix timestamp. 
	Returns: string







