Jump to content

fox182

Members
  • Posts

    15
  • Joined

  • Last visited

Posts posted by fox182

  1. Re: Forex Rebellion

     

    This system will lose a lot during whipsaw and ranging market as most of the trend following system. This system need more indicator to filter the whipsaw or ranging market. But I think, this kind of filter is hard to elaborate. If someone can make an efficace indicator than can filter all whipsaw and ranging market, every trend following system will be very profitable.

     

    But what kind of indicator you suggest? some indicator of trend? I'm interested in helping

  2. Re: BlueWave Trading Precision Indicators [for ninjatrader]

     

    Could someone pass the code to mql?

     

    //

    // Copyright © 2006, NinjaTrader LLC <[email protected]>.

    // NinjaTrader reserves the right to modify or overwrite this NinjaScript component with each release.

    //

     

    #region Using declarations

    using System;

    using System.ComponentModel;

    using System.Drawing;

    using System.Drawing.Drawing2D;

    using System.Xml.Serialization;

    using NinjaTrader.Data;

    using NinjaTrader.Gui.Chart;

    #endregion

     

    #region NinjaScript generated code. Neither change nor remove.

    // This namespace holds all indicators and is required. Do not change it.

    namespace NinjaTrader.Indicator

    {

    public partial class Indicator : IndicatorBase

    {

    private BWTBBandOscillator[] cacheBWTBBandOscillator = null;

    private BWTNaturalBands[] cacheBWTNaturalBands = null;

    private BWTParabolic[] cacheBWTParabolic = null;

    private BWTPercentRStoch[] cacheBWTPercentRStoch = null;

    private BWTPrecisionCCI[] cacheBWTPrecisionCCI = null;

    private BWTPrecisionMA[] cacheBWTPrecisionMA = null;

    private BWTPrecisionStop[] cacheBWTPrecisionStop = null;

    private BWTPrecisionTrend[] cacheBWTPrecisionTrend = null;

    private BWTTickVolume[] cacheBWTTickVolume = null;

     

    private static BWTBBandOscillator checkBWTBBandOscillator = new BWTBBandOscillator();

    private static BWTNaturalBands checkBWTNaturalBands = new BWTNaturalBands();

    private static BWTParabolic checkBWTParabolic = new BWTParabolic();

    private static BWTPercentRStoch checkBWTPercentRStoch = new BWTPercentRStoch();

    private static BWTPrecisionCCI checkBWTPrecisionCCI = new BWTPrecisionCCI();

    private static BWTPrecisionMA checkBWTPrecisionMA = new BWTPrecisionMA();

    private static BWTPrecisionStop checkBWTPrecisionStop = new BWTPrecisionStop();

    private static BWTPrecisionTrend checkBWTPrecisionTrend = new BWTPrecisionTrend();

    private static BWTTickVolume checkBWTTickVolume = new BWTTickVolume();

     

    /// <summary>

    /// Blue Wave Squeeze Indicator

    /// </summary>

    /// <returns></returns>

    public BWTBBandOscillator BWTBBandOscillator(int alertLine, int bB, double kC, int length)

    {

    return BWTBBandOscillator(Input, alertLine, bB, kC, length);

    }

     

    /// <summary>

    /// Blue Wave Squeeze Indicator

    /// </summary>

    /// <returns></returns>

    public BWTBBandOscillator BWTBBandOscillator(Data.IDataSeries input, int alertLine, int bB, double kC, int length)

    {

    checkBWTBBandOscillator.AlertLine = alertLine;

    alertLine = checkBWTBBandOscillator.AlertLine;

    checkBWTBBandOscillator.BB = bB;

    bB = checkBWTBBandOscillator.BB;

    checkBWTBBandOscillator.KC = kC;

    kC = checkBWTBBandOscillator.KC;

    checkBWTBBandOscillator.Length = length;

    length = checkBWTBBandOscillator.Length;

     

    if (cacheBWTBBandOscillator != null)

    for (int idx = 0; idx < cacheBWTBBandOscillator.Length; idx++)

    if (cacheBWTBBandOscillator[idx].AlertLine == alertLine && cacheBWTBBandOscillator[idx].BB == bB && Math.Abs(cacheBWTBBandOscillator[idx].KC - kC) <= double.Epsilon && cacheBWTBBandOscillator[idx].Length == length && cacheBWTBBandOscillator[idx].EqualsInput(input))

    return cacheBWTBBandOscillator[idx];

     

    BWTBBandOscillator indicator = new BWTBBandOscillator();

    indicator.BarsRequired = BarsRequired;

    indicator.CalculateOnBarClose = CalculateOnBarClose;

    indicator.Input = input;

    indicator.AlertLine = alertLine;

    indicator.BB = bB;

    indicator.KC = kC;

    indicator.Length = length;

    indicator.SetUp();

     

    BWTBBandOscillator[] tmp = new BWTBBandOscillator[cacheBWTBBandOscillator == null ? 1 : cacheBWTBBandOscillator.Length + 1];

    if (cacheBWTBBandOscillator != null)

    cacheBWTBBandOscillator.CopyTo(tmp, 0);

    tmp[tmp.Length - 1] = indicator;

    cacheBWTBBandOscillator = tmp;

    Indicators.Add(indicator);

     

    return indicator;

    }

     

    /// <summary>

    /// Blue Wave Trading Natural Bands Indicator

    /// </summary>

    /// <returns></returns>

    public BWTNaturalBands BWTNaturalBands(int avgLength, double xBandATR, double yBandATR)

    {

    return BWTNaturalBands(Input, avgLength, xBandATR, yBandATR);

    }

     

    /// <summary>

    /// Blue Wave Trading Natural Bands Indicator

    /// </summary>

    /// <returns></returns>

    public BWTNaturalBands BWTNaturalBands(Data.IDataSeries input, int avgLength, double xBandATR, double yBandATR)

    {

    checkBWTNaturalBands.AvgLength = avgLength;

    avgLength = checkBWTNaturalBands.AvgLength;

    checkBWTNaturalBands.xBandATR = xBandATR;

    xBandATR = checkBWTNaturalBands.xBandATR;

    checkBWTNaturalBands.yBandATR = yBandATR;

    yBandATR = checkBWTNaturalBands.yBandATR;

     

    if (cacheBWTNaturalBands != null)

    for (int idx = 0; idx < cacheBWTNaturalBands.Length; idx++)

    if (cacheBWTNaturalBands[idx].AvgLength == avgLength && Math.Abs(cacheBWTNaturalBands[idx].xBandATR - xBandATR) <= double.Epsilon && Math.Abs(cacheBWTNaturalBands[idx].yBandATR - yBandATR) <= double.Epsilon && cacheBWTNaturalBands[idx].EqualsInput(input))

    return cacheBWTNaturalBands[idx];

     

    BWTNaturalBands indicator = new BWTNaturalBands();

    indicator.BarsRequired = BarsRequired;

    indicator.CalculateOnBarClose = CalculateOnBarClose;

    indicator.Input = input;

    indicator.AvgLength = avgLength;

    indicator.xBandATR = xBandATR;

    indicator.yBandATR = yBandATR;

    indicator.SetUp();

     

    BWTNaturalBands[] tmp = new BWTNaturalBands[cacheBWTNaturalBands == null ? 1 : cacheBWTNaturalBands.Length + 1];

    if (cacheBWTNaturalBands != null)

    cacheBWTNaturalBands.CopyTo(tmp, 0);

    tmp[tmp.Length - 1] = indicator;

    cacheBWTNaturalBands = tmp;

    Indicators.Add(indicator);

     

    return indicator;

    }

     

    /// <summary>

    /// BWT Parabolic

    /// </summary>

    /// <returns></returns>

    public BWTParabolic BWTParabolic(int displace, double sensitivity, bool showDots, bool showLines)

    {

    return BWTParabolic(Input, displace, sensitivity, showDots, showLines);

    }

     

    /// <summary>

    /// BWT Parabolic

    /// </summary>

    /// <returns></returns>

    public BWTParabolic BWTParabolic(Data.IDataSeries input, int displace, double sensitivity, bool showDots, bool showLines)

    {

    checkBWTParabolic.Displace = displace;

    displace = checkBWTParabolic.Displace;

    checkBWTParabolic.Sensitivity = sensitivity;

    sensitivity = checkBWTParabolic.Sensitivity;

    checkBWTParabolic.ShowDots = showDots;

    showDots = checkBWTParabolic.ShowDots;

    checkBWTParabolic.ShowLines = showLines;

    showLines = checkBWTParabolic.ShowLines;

     

    if (cacheBWTParabolic != null)

    for (int idx = 0; idx < cacheBWTParabolic.Length; idx++)

    if (cacheBWTParabolic[idx].Displace == displace && Math.Abs(cacheBWTParabolic[idx].Sensitivity - sensitivity) <= double.Epsilon && cacheBWTParabolic[idx].ShowDots == showDots && cacheBWTParabolic[idx].ShowLines == showLines && cacheBWTParabolic[idx].EqualsInput(input))

    return cacheBWTParabolic[idx];

     

    BWTParabolic indicator = new BWTParabolic();

    indicator.BarsRequired = BarsRequired;

    indicator.CalculateOnBarClose = CalculateOnBarClose;

    indicator.Input = input;

    indicator.Displace = displace;

    indicator.Sensitivity = sensitivity;

    indicator.ShowDots = showDots;

    indicator.ShowLines = showLines;

    indicator.SetUp();

     

    BWTParabolic[] tmp = new BWTParabolic[cacheBWTParabolic == null ? 1 : cacheBWTParabolic.Length + 1];

    if (cacheBWTParabolic != null)

    cacheBWTParabolic.CopyTo(tmp, 0);

    tmp[tmp.Length - 1] = indicator;

    cacheBWTParabolic = tmp;

    Indicators.Add(indicator);

     

    return indicator;

    }

     

    /// <summary>

    /// Plots Williams %R and Stochastics

    /// </summary>

    /// <returns></returns>

    public BWTPercentRStoch BWTPercentRStoch(int length, int smooth, int stochLen)

    {

    return BWTPercentRStoch(Input, length, smooth, stochLen);

    }

     

    /// <summary>

    /// Plots Williams %R and Stochastics

    /// </summary>

    /// <returns></returns>

    public BWTPercentRStoch BWTPercentRStoch(Data.IDataSeries input, int length, int smooth, int stochLen)

    {

    checkBWTPercentRStoch.Length = length;

    length = checkBWTPercentRStoch.Length;

    checkBWTPercentRStoch.Smooth = smooth;

    smooth = checkBWTPercentRStoch.Smooth;

    checkBWTPercentRStoch.StochLen = stochLen;

    stochLen = checkBWTPercentRStoch.StochLen;

     

    if (cacheBWTPercentRStoch != null)

    for (int idx = 0; idx < cacheBWTPercentRStoch.Length; idx++)

    if (cacheBWTPercentRStoch[idx].Length == length && cacheBWTPercentRStoch[idx].Smooth == smooth && cacheBWTPercentRStoch[idx].StochLen == stochLen && cacheBWTPercentRStoch[idx].EqualsInput(input))

    return cacheBWTPercentRStoch[idx];

     

    BWTPercentRStoch indicator = new BWTPercentRStoch();

    indicator.BarsRequired = BarsRequired;

    indicator.CalculateOnBarClose = CalculateOnBarClose;

    indicator.Input = input;

    indicator.Length = length;

    indicator.Smooth = smooth;

    indicator.StochLen = stochLen;

    indicator.SetUp();

     

    BWTPercentRStoch[] tmp = new BWTPercentRStoch[cacheBWTPercentRStoch == null ? 1 : cacheBWTPercentRStoch.Length + 1];

    if (cacheBWTPercentRStoch != null)

    cacheBWTPercentRStoch.CopyTo(tmp, 0);

    tmp[tmp.Length - 1] = indicator;

    cacheBWTPercentRStoch = tmp;

    Indicators.Add(indicator);

     

    return indicator;

    }

     

    /// <summary>

    /// BWT Precision CCI

    /// </summary>

    /// <returns></returns>

    public BWTPrecisionCCI BWTPrecisionCCI(int p1_CCILength, int p2_SignalLine, int p3_TriggerLine, double p4_Sensitivity, bool p5_ShowCCIAvg, bool p6_ShowCongestion, bool p7_ShowDots, bool p8_ShowFastCCI, string p9_SoundAlertFileName)

    {

    return BWTPrecisionCCI(Input, p1_CCILength, p2_SignalLine, p3_TriggerLine, p4_Sensitivity, p5_ShowCCIAvg, p6_ShowCongestion, p7_ShowDots, p8_ShowFastCCI, p9_SoundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision CCI

    /// </summary>

    /// <returns></returns>

    public BWTPrecisionCCI BWTPrecisionCCI(Data.IDataSeries input, int p1_CCILength, int p2_SignalLine, int p3_TriggerLine, double p4_Sensitivity, bool p5_ShowCCIAvg, bool p6_ShowCongestion, bool p7_ShowDots, bool p8_ShowFastCCI, string p9_SoundAlertFileName)

    {

    checkBWTPrecisionCCI.p1_CCILength = p1_CCILength;

    p1_CCILength = checkBWTPrecisionCCI.p1_CCILength;

    checkBWTPrecisionCCI.p2_SignalLine = p2_SignalLine;

    p2_SignalLine = checkBWTPrecisionCCI.p2_SignalLine;

    checkBWTPrecisionCCI.p3_TriggerLine = p3_TriggerLine;

    p3_TriggerLine = checkBWTPrecisionCCI.p3_TriggerLine;

    checkBWTPrecisionCCI.p4_Sensitivity = p4_Sensitivity;

    p4_Sensitivity = checkBWTPrecisionCCI.p4_Sensitivity;

    checkBWTPrecisionCCI.p5_ShowCCIAvg = p5_ShowCCIAvg;

    p5_ShowCCIAvg = checkBWTPrecisionCCI.p5_ShowCCIAvg;

    checkBWTPrecisionCCI.p6_ShowCongestion = p6_ShowCongestion;

    p6_ShowCongestion = checkBWTPrecisionCCI.p6_ShowCongestion;

    checkBWTPrecisionCCI.p7_ShowDots = p7_ShowDots;

    p7_ShowDots = checkBWTPrecisionCCI.p7_ShowDots;

    checkBWTPrecisionCCI.p8_ShowFastCCI = p8_ShowFastCCI;

    p8_ShowFastCCI = checkBWTPrecisionCCI.p8_ShowFastCCI;

    checkBWTPrecisionCCI.p9_SoundAlertFileName = p9_SoundAlertFileName;

    p9_SoundAlertFileName = checkBWTPrecisionCCI.p9_SoundAlertFileName;

     

    if (cacheBWTPrecisionCCI != null)

    for (int idx = 0; idx < cacheBWTPrecisionCCI.Length; idx++)

    if (cacheBWTPrecisionCCI[idx].p1_CCILength == p1_CCILength && cacheBWTPrecisionCCI[idx].p2_SignalLine == p2_SignalLine && cacheBWTPrecisionCCI[idx].p3_TriggerLine == p3_TriggerLine && Math.Abs(cacheBWTPrecisionCCI[idx].p4_Sensitivity - p4_Sensitivity) <= double.Epsilon && cacheBWTPrecisionCCI[idx].p5_ShowCCIAvg == p5_ShowCCIAvg && cacheBWTPrecisionCCI[idx].p6_ShowCongestion == p6_ShowCongestion && cacheBWTPrecisionCCI[idx].p7_ShowDots == p7_ShowDots && cacheBWTPrecisionCCI[idx].p8_ShowFastCCI == p8_ShowFastCCI && cacheBWTPrecisionCCI[idx].p9_SoundAlertFileName == p9_SoundAlertFileName && cacheBWTPrecisionCCI[idx].EqualsInput(input))

    return cacheBWTPrecisionCCI[idx];

     

    BWTPrecisionCCI indicator = new BWTPrecisionCCI();

    indicator.BarsRequired = BarsRequired;

    indicator.CalculateOnBarClose = CalculateOnBarClose;

    indicator.Input = input;

    indicator.p1_CCILength = p1_CCILength;

    indicator.p2_SignalLine = p2_SignalLine;

    indicator.p3_TriggerLine = p3_TriggerLine;

    indicator.p4_Sensitivity = p4_Sensitivity;

    indicator.p5_ShowCCIAvg = p5_ShowCCIAvg;

    indicator.p6_ShowCongestion = p6_ShowCongestion;

    indicator.p7_ShowDots = p7_ShowDots;

    indicator.p8_ShowFastCCI = p8_ShowFastCCI;

    indicator.p9_SoundAlertFileName = p9_SoundAlertFileName;

    indicator.SetUp();

     

    BWTPrecisionCCI[] tmp = new BWTPrecisionCCI[cacheBWTPrecisionCCI == null ? 1 : cacheBWTPrecisionCCI.Length + 1];

    if (cacheBWTPrecisionCCI != null)

    cacheBWTPrecisionCCI.CopyTo(tmp, 0);

    tmp[tmp.Length - 1] = indicator;

    cacheBWTPrecisionCCI = tmp;

    Indicators.Add(indicator);

     

    return indicator;

    }

     

    /// <summary>

    /// Blue Wave Trading Precision Moving Average

    /// </summary>

    /// <returns></returns>

    public BWTPrecisionMA BWTPrecisionMA(BWTPMA_MAType p1_MAType, int p2_Length, int p3_AMAFast, int p4_AMASlow, bool p5_ShowDots, string p6_AlertFileName)

    {

    return BWTPrecisionMA(Input, p1_MAType, p2_Length, p3_AMAFast, p4_AMASlow, p5_ShowDots, p6_AlertFileName);

    }

     

    /// <summary>

    /// Blue Wave Trading Precision Moving Average

    /// </summary>

    /// <returns></returns>

    public BWTPrecisionMA BWTPrecisionMA(Data.IDataSeries input, BWTPMA_MAType p1_MAType, int p2_Length, int p3_AMAFast, int p4_AMASlow, bool p5_ShowDots, string p6_AlertFileName)

    {

    checkBWTPrecisionMA.p1_MAType = p1_MAType;

    p1_MAType = checkBWTPrecisionMA.p1_MAType;

    checkBWTPrecisionMA.p2_Length = p2_Length;

    p2_Length = checkBWTPrecisionMA.p2_Length;

    checkBWTPrecisionMA.p3_AMAFast = p3_AMAFast;

    p3_AMAFast = checkBWTPrecisionMA.p3_AMAFast;

    checkBWTPrecisionMA.p4_AMASlow = p4_AMASlow;

    p4_AMASlow = checkBWTPrecisionMA.p4_AMASlow;

    checkBWTPrecisionMA.p5_ShowDots = p5_ShowDots;

    p5_ShowDots = checkBWTPrecisionMA.p5_ShowDots;

    checkBWTPrecisionMA.p6_AlertFileName = p6_AlertFileName;

    p6_AlertFileName = checkBWTPrecisionMA.p6_AlertFileName;

     

    if (cacheBWTPrecisionMA != null)

    for (int idx = 0; idx < cacheBWTPrecisionMA.Length; idx++)

    if (cacheBWTPrecisionMA[idx].p1_MAType == p1_MAType && cacheBWTPrecisionMA[idx].p2_Length == p2_Length && cacheBWTPrecisionMA[idx].p3_AMAFast == p3_AMAFast && cacheBWTPrecisionMA[idx].p4_AMASlow == p4_AMASlow && cacheBWTPrecisionMA[idx].p5_ShowDots == p5_ShowDots && cacheBWTPrecisionMA[idx].p6_AlertFileName == p6_AlertFileName && cacheBWTPrecisionMA[idx].EqualsInput(input))

    return cacheBWTPrecisionMA[idx];

     

    BWTPrecisionMA indicator = new BWTPrecisionMA();

    indicator.BarsRequired = BarsRequired;

    indicator.CalculateOnBarClose = CalculateOnBarClose;

    indicator.Input = input;

    indicator.p1_MAType = p1_MAType;

    indicator.p2_Length = p2_Length;

    indicator.p3_AMAFast = p3_AMAFast;

    indicator.p4_AMASlow = p4_AMASlow;

    indicator.p5_ShowDots = p5_ShowDots;

    indicator.p6_AlertFileName = p6_AlertFileName;

    indicator.SetUp();

     

    BWTPrecisionMA[] tmp = new BWTPrecisionMA[cacheBWTPrecisionMA == null ? 1 : cacheBWTPrecisionMA.Length + 1];

    if (cacheBWTPrecisionMA != null)

    cacheBWTPrecisionMA.CopyTo(tmp, 0);

    tmp[tmp.Length - 1] = indicator;

    cacheBWTPrecisionMA = tmp;

    Indicators.Add(indicator);

     

    return indicator;

    }

     

    /// <summary>

    /// BWT Precision Stop

    /// </summary>

    /// <returns></returns>

    public BWTPrecisionStop BWTPrecisionStop(TrailStopType p1_TrailStop, double p2_Mult, int p3_AvgPeriod, double p4_Sensitivity, string p5_SoundAlertFileName)

    {

    return BWTPrecisionStop(Input, p1_TrailStop, p2_Mult, p3_AvgPeriod, p4_Sensitivity, p5_SoundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Stop

    /// </summary>

    /// <returns></returns>

    public BWTPrecisionStop BWTPrecisionStop(Data.IDataSeries input, TrailStopType p1_TrailStop, double p2_Mult, int p3_AvgPeriod, double p4_Sensitivity, string p5_SoundAlertFileName)

    {

    checkBWTPrecisionStop.p1_TrailStop = p1_TrailStop;

    p1_TrailStop = checkBWTPrecisionStop.p1_TrailStop;

    checkBWTPrecisionStop.p2_Mult = p2_Mult;

    p2_Mult = checkBWTPrecisionStop.p2_Mult;

    checkBWTPrecisionStop.p3_AvgPeriod = p3_AvgPeriod;

    p3_AvgPeriod = checkBWTPrecisionStop.p3_AvgPeriod;

    checkBWTPrecisionStop.p4_Sensitivity = p4_Sensitivity;

    p4_Sensitivity = checkBWTPrecisionStop.p4_Sensitivity;

    checkBWTPrecisionStop.p5_SoundAlertFileName = p5_SoundAlertFileName;

    p5_SoundAlertFileName = checkBWTPrecisionStop.p5_SoundAlertFileName;

     

    if (cacheBWTPrecisionStop != null)

    for (int idx = 0; idx < cacheBWTPrecisionStop.Length; idx++)

    if (cacheBWTPrecisionStop[idx].p1_TrailStop == p1_TrailStop && Math.Abs(cacheBWTPrecisionStop[idx].p2_Mult - p2_Mult) <= double.Epsilon && cacheBWTPrecisionStop[idx].p3_AvgPeriod == p3_AvgPeriod && Math.Abs(cacheBWTPrecisionStop[idx].p4_Sensitivity - p4_Sensitivity) <= double.Epsilon && cacheBWTPrecisionStop[idx].p5_SoundAlertFileName == p5_SoundAlertFileName && cacheBWTPrecisionStop[idx].EqualsInput(input))

    return cacheBWTPrecisionStop[idx];

     

    BWTPrecisionStop indicator = new BWTPrecisionStop();

    indicator.BarsRequired = BarsRequired;

    indicator.CalculateOnBarClose = CalculateOnBarClose;

    indicator.Input = input;

    indicator.p1_TrailStop = p1_TrailStop;

    indicator.p2_Mult = p2_Mult;

    indicator.p3_AvgPeriod = p3_AvgPeriod;

    indicator.p4_Sensitivity = p4_Sensitivity;

    indicator.p5_SoundAlertFileName = p5_SoundAlertFileName;

    indicator.SetUp();

     

    BWTPrecisionStop[] tmp = new BWTPrecisionStop[cacheBWTPrecisionStop == null ? 1 : cacheBWTPrecisionStop.Length + 1];

    if (cacheBWTPrecisionStop != null)

    cacheBWTPrecisionStop.CopyTo(tmp, 0);

    tmp[tmp.Length - 1] = indicator;

    cacheBWTPrecisionStop = tmp;

    Indicators.Add(indicator);

     

    return indicator;

    }

     

    /// <summary>

    /// BWT Precision Trend

    /// </summary>

    /// <returns></returns>

    public BWTPrecisionTrend BWTPrecisionTrend(double bwtSensitivity, string soundAlertFileName)

    {

    return BWTPrecisionTrend(Input, bwtSensitivity, soundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Trend

    /// </summary>

    /// <returns></returns>

    public BWTPrecisionTrend BWTPrecisionTrend(Data.IDataSeries input, double bwtSensitivity, string soundAlertFileName)

    {

    checkBWTPrecisionTrend.BwtSensitivity = bwtSensitivity;

    bwtSensitivity = checkBWTPrecisionTrend.BwtSensitivity;

    checkBWTPrecisionTrend.SoundAlertFileName = soundAlertFileName;

    soundAlertFileName = checkBWTPrecisionTrend.SoundAlertFileName;

     

    if (cacheBWTPrecisionTrend != null)

    for (int idx = 0; idx < cacheBWTPrecisionTrend.Length; idx++)

    if (Math.Abs(cacheBWTPrecisionTrend[idx].BwtSensitivity - bwtSensitivity) <= double.Epsilon && cacheBWTPrecisionTrend[idx].SoundAlertFileName == soundAlertFileName && cacheBWTPrecisionTrend[idx].EqualsInput(input))

    return cacheBWTPrecisionTrend[idx];

     

    BWTPrecisionTrend indicator = new BWTPrecisionTrend();

    indicator.BarsRequired = BarsRequired;

    indicator.CalculateOnBarClose = CalculateOnBarClose;

    indicator.Input = input;

    indicator.BwtSensitivity = bwtSensitivity;

    indicator.SoundAlertFileName = soundAlertFileName;

    indicator.SetUp();

     

    BWTPrecisionTrend[] tmp = new BWTPrecisionTrend[cacheBWTPrecisionTrend == null ? 1 : cacheBWTPrecisionTrend.Length + 1];

    if (cacheBWTPrecisionTrend != null)

    cacheBWTPrecisionTrend.CopyTo(tmp, 0);

    tmp[tmp.Length - 1] = indicator;

    cacheBWTPrecisionTrend = tmp;

    Indicators.Add(indicator);

     

    return indicator;

    }

     

    /// <summary>

    /// Blue Wave Trading Tick Volume Indicator (TVI)

    /// </summary>

    /// <returns></returns>

    public BWTTickVolume BWTTickVolume(string alertFileName, int m_R, int m_S, int m_SigLen, int m_Trigger, int m_ZeroLine, BWTTVI_CalcType tickCalculationMode)

    {

    return BWTTickVolume(Input, alertFileName, m_R, m_S, m_SigLen, m_Trigger, m_ZeroLine, tickCalculationMode);

    }

     

    /// <summary>

    /// Blue Wave Trading Tick Volume Indicator (TVI)

    /// </summary>

    /// <returns></returns>

    public BWTTickVolume BWTTickVolume(Data.IDataSeries input, string alertFileName, int m_R, int m_S, int m_SigLen, int m_Trigger, int m_ZeroLine, BWTTVI_CalcType tickCalculationMode)

    {

    checkBWTTickVolume.AlertFileName = alertFileName;

    alertFileName = checkBWTTickVolume.AlertFileName;

    checkBWTTickVolume.m_R = m_R;

    m_R = checkBWTTickVolume.m_R;

    checkBWTTickVolume.m_S = m_S;

    m_S = checkBWTTickVolume.m_S;

    checkBWTTickVolume.m_SigLen = m_SigLen;

    m_SigLen = checkBWTTickVolume.m_SigLen;

    checkBWTTickVolume.m_Trigger = m_Trigger;

    m_Trigger = checkBWTTickVolume.m_Trigger;

    checkBWTTickVolume.m_ZeroLine = m_ZeroLine;

    m_ZeroLine = checkBWTTickVolume.m_ZeroLine;

    checkBWTTickVolume.TickCalculationMode = tickCalculationMode;

    tickCalculationMode = checkBWTTickVolume.TickCalculationMode;

     

    if (cacheBWTTickVolume != null)

    for (int idx = 0; idx < cacheBWTTickVolume.Length; idx++)

    if (cacheBWTTickVolume[idx].AlertFileName == alertFileName && cacheBWTTickVolume[idx].m_R == m_R && cacheBWTTickVolume[idx].m_S == m_S && cacheBWTTickVolume[idx].m_SigLen == m_SigLen && cacheBWTTickVolume[idx].m_Trigger == m_Trigger && cacheBWTTickVolume[idx].m_ZeroLine == m_ZeroLine && cacheBWTTickVolume[idx].TickCalculationMode == tickCalculationMode && cacheBWTTickVolume[idx].EqualsInput(input))

    return cacheBWTTickVolume[idx];

     

    BWTTickVolume indicator = new BWTTickVolume();

    indicator.BarsRequired = BarsRequired;

    indicator.CalculateOnBarClose = CalculateOnBarClose;

    indicator.Input = input;

    indicator.AlertFileName = alertFileName;

    indicator.m_R = m_R;

    indicator.m_S = m_S;

    indicator.m_SigLen = m_SigLen;

    indicator.m_Trigger = m_Trigger;

    indicator.m_ZeroLine = m_ZeroLine;

    indicator.TickCalculationMode = tickCalculationMode;

    indicator.SetUp();

     

    BWTTickVolume[] tmp = new BWTTickVolume[cacheBWTTickVolume == null ? 1 : cacheBWTTickVolume.Length + 1];

    if (cacheBWTTickVolume != null)

    cacheBWTTickVolume.CopyTo(tmp, 0);

    tmp[tmp.Length - 1] = indicator;

    cacheBWTTickVolume = tmp;

    Indicators.Add(indicator);

     

    return indicator;

    }

     

    }

    }

     

    // This namespace holds all market analyzer column definitions and is required. Do not change it.

    namespace NinjaTrader.MarketAnalyzer

    {

    public partial class Column : ColumnBase

    {

    /// <summary>

    /// Blue Wave Squeeze Indicator

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTBBandOscillator BWTBBandOscillator(int alertLine, int bB, double kC, int length)

    {

    return _indicator.BWTBBandOscillator(Input, alertLine, bB, kC, length);

    }

     

    /// <summary>

    /// Blue Wave Squeeze Indicator

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTBBandOscillator BWTBBandOscillator(Data.IDataSeries input, int alertLine, int bB, double kC, int length)

    {

    return _indicator.BWTBBandOscillator(input, alertLine, bB, kC, length);

    }

     

    /// <summary>

    /// Blue Wave Trading Natural Bands Indicator

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTNaturalBands BWTNaturalBands(int avgLength, double xBandATR, double yBandATR)

    {

    return _indicator.BWTNaturalBands(Input, avgLength, xBandATR, yBandATR);

    }

     

    /// <summary>

    /// Blue Wave Trading Natural Bands Indicator

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTNaturalBands BWTNaturalBands(Data.IDataSeries input, int avgLength, double xBandATR, double yBandATR)

    {

    return _indicator.BWTNaturalBands(input, avgLength, xBandATR, yBandATR);

    }

     

    /// <summary>

    /// BWT Parabolic

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTParabolic BWTParabolic(int displace, double sensitivity, bool showDots, bool showLines)

    {

    return _indicator.BWTParabolic(Input, displace, sensitivity, showDots, showLines);

    }

     

    /// <summary>

    /// BWT Parabolic

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTParabolic BWTParabolic(Data.IDataSeries input, int displace, double sensitivity, bool showDots, bool showLines)

    {

    return _indicator.BWTParabolic(input, displace, sensitivity, showDots, showLines);

    }

     

    /// <summary>

    /// Plots Williams %R and Stochastics

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPercentRStoch BWTPercentRStoch(int length, int smooth, int stochLen)

    {

    return _indicator.BWTPercentRStoch(Input, length, smooth, stochLen);

    }

     

    /// <summary>

    /// Plots Williams %R and Stochastics

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPercentRStoch BWTPercentRStoch(Data.IDataSeries input, int length, int smooth, int stochLen)

    {

    return _indicator.BWTPercentRStoch(input, length, smooth, stochLen);

    }

     

    /// <summary>

    /// BWT Precision CCI

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPrecisionCCI BWTPrecisionCCI(int p1_CCILength, int p2_SignalLine, int p3_TriggerLine, double p4_Sensitivity, bool p5_ShowCCIAvg, bool p6_ShowCongestion, bool p7_ShowDots, bool p8_ShowFastCCI, string p9_SoundAlertFileName)

    {

    return _indicator.BWTPrecisionCCI(Input, p1_CCILength, p2_SignalLine, p3_TriggerLine, p4_Sensitivity, p5_ShowCCIAvg, p6_ShowCongestion, p7_ShowDots, p8_ShowFastCCI, p9_SoundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision CCI

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPrecisionCCI BWTPrecisionCCI(Data.IDataSeries input, int p1_CCILength, int p2_SignalLine, int p3_TriggerLine, double p4_Sensitivity, bool p5_ShowCCIAvg, bool p6_ShowCongestion, bool p7_ShowDots, bool p8_ShowFastCCI, string p9_SoundAlertFileName)

    {

    return _indicator.BWTPrecisionCCI(input, p1_CCILength, p2_SignalLine, p3_TriggerLine, p4_Sensitivity, p5_ShowCCIAvg, p6_ShowCongestion, p7_ShowDots, p8_ShowFastCCI, p9_SoundAlertFileName);

    }

     

    /// <summary>

    /// Blue Wave Trading Precision Moving Average

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPrecisionMA BWTPrecisionMA(BWTPMA_MAType p1_MAType, int p2_Length, int p3_AMAFast, int p4_AMASlow, bool p5_ShowDots, string p6_AlertFileName)

    {

    return _indicator.BWTPrecisionMA(Input, p1_MAType, p2_Length, p3_AMAFast, p4_AMASlow, p5_ShowDots, p6_AlertFileName);

    }

     

    /// <summary>

    /// Blue Wave Trading Precision Moving Average

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPrecisionMA BWTPrecisionMA(Data.IDataSeries input, BWTPMA_MAType p1_MAType, int p2_Length, int p3_AMAFast, int p4_AMASlow, bool p5_ShowDots, string p6_AlertFileName)

    {

    return _indicator.BWTPrecisionMA(input, p1_MAType, p2_Length, p3_AMAFast, p4_AMASlow, p5_ShowDots, p6_AlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Stop

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPrecisionStop BWTPrecisionStop(TrailStopType p1_TrailStop, double p2_Mult, int p3_AvgPeriod, double p4_Sensitivity, string p5_SoundAlertFileName)

    {

    return _indicator.BWTPrecisionStop(Input, p1_TrailStop, p2_Mult, p3_AvgPeriod, p4_Sensitivity, p5_SoundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Stop

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPrecisionStop BWTPrecisionStop(Data.IDataSeries input, TrailStopType p1_TrailStop, double p2_Mult, int p3_AvgPeriod, double p4_Sensitivity, string p5_SoundAlertFileName)

    {

    return _indicator.BWTPrecisionStop(input, p1_TrailStop, p2_Mult, p3_AvgPeriod, p4_Sensitivity, p5_SoundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Trend

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPrecisionTrend BWTPrecisionTrend(double bwtSensitivity, string soundAlertFileName)

    {

    return _indicator.BWTPrecisionTrend(Input, bwtSensitivity, soundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Trend

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPrecisionTrend BWTPrecisionTrend(Data.IDataSeries input, double bwtSensitivity, string soundAlertFileName)

    {

    return _indicator.BWTPrecisionTrend(input, bwtSensitivity, soundAlertFileName);

    }

     

    /// <summary>

    /// Blue Wave Trading Tick Volume Indicator (TVI)

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTTickVolume BWTTickVolume(string alertFileName, int m_R, int m_S, int m_SigLen, int m_Trigger, int m_ZeroLine, BWTTVI_CalcType tickCalculationMode)

    {

    return _indicator.BWTTickVolume(Input, alertFileName, m_R, m_S, m_SigLen, m_Trigger, m_ZeroLine, tickCalculationMode);

    }

     

    /// <summary>

    /// Blue Wave Trading Tick Volume Indicator (TVI)

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTTickVolume BWTTickVolume(Data.IDataSeries input, string alertFileName, int m_R, int m_S, int m_SigLen, int m_Trigger, int m_ZeroLine, BWTTVI_CalcType tickCalculationMode)

    {

    return _indicator.BWTTickVolume(input, alertFileName, m_R, m_S, m_SigLen, m_Trigger, m_ZeroLine, tickCalculationMode);

    }

     

    }

    }

     

    // This namespace holds all strategies and is required. Do not change it.

    namespace NinjaTrader.Strategy

    {

    public partial class Strategy : StrategyBase

    {

    /// <summary>

    /// Blue Wave Squeeze Indicator

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTBBandOscillator BWTBBandOscillator(int alertLine, int bB, double kC, int length)

    {

    return _indicator.BWTBBandOscillator(Input, alertLine, bB, kC, length);

    }

     

    /// <summary>

    /// Blue Wave Squeeze Indicator

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTBBandOscillator BWTBBandOscillator(Data.IDataSeries input, int alertLine, int bB, double kC, int length)

    {

    if (InInitialize && input == null)

    throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method");

     

    return _indicator.BWTBBandOscillator(input, alertLine, bB, kC, length);

    }

     

    /// <summary>

    /// Blue Wave Trading Natural Bands Indicator

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTNaturalBands BWTNaturalBands(int avgLength, double xBandATR, double yBandATR)

    {

    return _indicator.BWTNaturalBands(Input, avgLength, xBandATR, yBandATR);

    }

     

    /// <summary>

    /// Blue Wave Trading Natural Bands Indicator

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTNaturalBands BWTNaturalBands(Data.IDataSeries input, int avgLength, double xBandATR, double yBandATR)

    {

    if (InInitialize && input == null)

    throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method");

     

    return _indicator.BWTNaturalBands(input, avgLength, xBandATR, yBandATR);

    }

     

    /// <summary>

    /// BWT Parabolic

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTParabolic BWTParabolic(int displace, double sensitivity, bool showDots, bool showLines)

    {

    return _indicator.BWTParabolic(Input, displace, sensitivity, showDots, showLines);

    }

     

    /// <summary>

    /// BWT Parabolic

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTParabolic BWTParabolic(Data.IDataSeries input, int displace, double sensitivity, bool showDots, bool showLines)

    {

    if (InInitialize && input == null)

    throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method");

     

    return _indicator.BWTParabolic(input, displace, sensitivity, showDots, showLines);

    }

     

    /// <summary>

    /// Plots Williams %R and Stochastics

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPercentRStoch BWTPercentRStoch(int length, int smooth, int stochLen)

    {

    return _indicator.BWTPercentRStoch(Input, length, smooth, stochLen);

    }

     

    /// <summary>

    /// Plots Williams %R and Stochastics

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPercentRStoch BWTPercentRStoch(Data.IDataSeries input, int length, int smooth, int stochLen)

    {

    if (InInitialize && input == null)

    throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method");

     

    return _indicator.BWTPercentRStoch(input, length, smooth, stochLen);

    }

     

    /// <summary>

    /// BWT Precision CCI

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPrecisionCCI BWTPrecisionCCI(int p1_CCILength, int p2_SignalLine, int p3_TriggerLine, double p4_Sensitivity, bool p5_ShowCCIAvg, bool p6_ShowCongestion, bool p7_ShowDots, bool p8_ShowFastCCI, string p9_SoundAlertFileName)

    {

    return _indicator.BWTPrecisionCCI(Input, p1_CCILength, p2_SignalLine, p3_TriggerLine, p4_Sensitivity, p5_ShowCCIAvg, p6_ShowCongestion, p7_ShowDots, p8_ShowFastCCI, p9_SoundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision CCI

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPrecisionCCI BWTPrecisionCCI(Data.IDataSeries input, int p1_CCILength, int p2_SignalLine, int p3_TriggerLine, double p4_Sensitivity, bool p5_ShowCCIAvg, bool p6_ShowCongestion, bool p7_ShowDots, bool p8_ShowFastCCI, string p9_SoundAlertFileName)

    {

    if (InInitialize && input == null)

    throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method");

     

    return _indicator.BWTPrecisionCCI(input, p1_CCILength, p2_SignalLine, p3_TriggerLine, p4_Sensitivity, p5_ShowCCIAvg, p6_ShowCongestion, p7_ShowDots, p8_ShowFastCCI, p9_SoundAlertFileName);

    }

     

    /// <summary>

    /// Blue Wave Trading Precision Moving Average

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPrecisionMA BWTPrecisionMA(BWTPMA_MAType p1_MAType, int p2_Length, int p3_AMAFast, int p4_AMASlow, bool p5_ShowDots, string p6_AlertFileName)

    {

    return _indicator.BWTPrecisionMA(Input, p1_MAType, p2_Length, p3_AMAFast, p4_AMASlow, p5_ShowDots, p6_AlertFileName);

    }

     

    /// <summary>

    /// Blue Wave Trading Precision Moving Average

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPrecisionMA BWTPrecisionMA(Data.IDataSeries input, BWTPMA_MAType p1_MAType, int p2_Length, int p3_AMAFast, int p4_AMASlow, bool p5_ShowDots, string p6_AlertFileName)

    {

    if (InInitialize && input == null)

    throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method");

     

    return _indicator.BWTPrecisionMA(input, p1_MAType, p2_Length, p3_AMAFast, p4_AMASlow, p5_ShowDots, p6_AlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Stop

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPrecisionStop BWTPrecisionStop(TrailStopType p1_TrailStop, double p2_Mult, int p3_AvgPeriod, double p4_Sensitivity, string p5_SoundAlertFileName)

    {

    return _indicator.BWTPrecisionStop(Input, p1_TrailStop, p2_Mult, p3_AvgPeriod, p4_Sensitivity, p5_SoundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Stop

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPrecisionStop BWTPrecisionStop(Data.IDataSeries input, TrailStopType p1_TrailStop, double p2_Mult, int p3_AvgPeriod, double p4_Sensitivity, string p5_SoundAlertFileName)

    {

    if (InInitialize && input == null)

    throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method");

     

    return _indicator.BWTPrecisionStop(input, p1_TrailStop, p2_Mult, p3_AvgPeriod, p4_Sensitivity, p5_SoundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Trend

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTPrecisionTrend BWTPrecisionTrend(double bwtSensitivity, string soundAlertFileName)

    {

    return _indicator.BWTPrecisionTrend(Input, bwtSensitivity, soundAlertFileName);

    }

     

    /// <summary>

    /// BWT Precision Trend

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTPrecisionTrend BWTPrecisionTrend(Data.IDataSeries input, double bwtSensitivity, string soundAlertFileName)

    {

    if (InInitialize && input == null)

    throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method");

     

    return _indicator.BWTPrecisionTrend(input, bwtSensitivity, soundAlertFileName);

    }

     

    /// <summary>

    /// Blue Wave Trading Tick Volume Indicator (TVI)

    /// </summary>

    /// <returns></returns>

    [Gui.Design.WizardCondition("Indicator")]

    public Indicator.BWTTickVolume BWTTickVolume(string alertFileName, int m_R, int m_S, int m_SigLen, int m_Trigger, int m_ZeroLine, BWTTVI_CalcType tickCalculationMode)

    {

    return _indicator.BWTTickVolume(Input, alertFileName, m_R, m_S, m_SigLen, m_Trigger, m_ZeroLine, tickCalculationMode);

    }

     

    /// <summary>

    /// Blue Wave Trading Tick Volume Indicator (TVI)

    /// </summary>

    /// <returns></returns>

    public Indicator.BWTTickVolume BWTTickVolume(Data.IDataSeries input, string alertFileName, int m_R, int m_S, int m_SigLen, int m_Trigger, int m_ZeroLine, BWTTVI_CalcType tickCalculationMode)

    {

    if (InInitialize && input == null)

    throw new ArgumentException("You only can access an indicator with the default input/bar series from within the 'Initialize()' method");

     

    return _indicator.BWTTickVolume(input, alertFileName, m_R, m_S, m_SigLen, m_Trigger, m_ZeroLine, tickCalculationMode);

    }

     

    }

    }

    #endregion

×
×
  • Create New...