I can't send you the fotos so I describe the problem again and send you the code.
Backtestresults after I have loaded the currency pair new:
Netto Gewinn 8.002,32 €
Gesamt Aufträge 421
Verlust Aufträge 42
If I make a second update the results are:
Netto Gewinn 5225 €
Gesamt Aufträge 437
Verlust Aufträge 85
A look at the parameters shows, that they have changed without I have done anything. When I load the currency pair new I have the correct parameters again.
// -------------------------------------------------------------------------------
//
//
//
// -------------------------------------------------------------------------------
using System;
using cAlgo.API;
using cAlgo.API.Requests;
using cAlgo.API.Indicators;
using cAlgo.Indicators;
using cAlgo.API.Internals;
namespace cAlgo.Robots
{
[Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
public class NewAUDUSD : Robot
{
[Parameter("Label", DefaultValue = "NewAUDUSD")]
public string Label { get; set; }
[Parameter("Max-Spread", DefaultValue = 2, MinValue = 0.1, Step = 0.1)]
public double MaxSpread { get; set; }
[Parameter("Volume", DefaultValue = 10000.0, MinValue = 1000.0, Step = 1000.0)]
public double Volume { get; set; }
[Parameter("Use-Dynamic-Volume", DefaultValue = false)]
public bool UseDynamicVolume { get; set; }
[Parameter("Dynamic-Volume-Multiplier", DefaultValue = 2.0, MinValue = 0.5, MaxValue = 10.0, Step = 0.5)]
public double DynamicVolumeMultiplier { get; set; }
[Parameter("Period-Buy", DefaultValue = 58)]
public int Period { get; set; }
[Parameter("Period1-Sell", DefaultValue = 66)]
public int Period1 { get; set; }
[Parameter("Period2-Sell", DefaultValue = 39)]
public int Period2 { get; set; }
[Parameter("Period3-Sell", DefaultValue = 41)]
public int Period3 { get; set; }
[Parameter("Period4-Buy", DefaultValue = 69)]
public int Period4 { get; set; }
[Parameter("Period5-Buy", DefaultValue = 62)]
public int Period5 { get; set; }
[Parameter("Period6-Sell", DefaultValue = 64)]
public int Period6 { get; set; }
[Parameter("Period7-Sell", DefaultValue = 26)]
public int Period7 { get; set; }
[Parameter("Period10-Buy", DefaultValue = 64)]
public int Period10 { get; set; }
[Parameter("Period12-Buy", DefaultValue = 46)]
public int Period12 { get; set; }
[Parameter("Period13-Sell", DefaultValue = 38)]
public int Period13 { get; set; }
[Parameter("Period14-Buy", DefaultValue = 48)]
public int Period14 { get; set; }
[Parameter("Period15-Sell", DefaultValue = 45)]
public int Period15 { get; set; }
[Parameter("Period16-Buy", DefaultValue = 60)]
public int Period16 { get; set; }
[Parameter("Period17-Sell", DefaultValue = 87)]
public int Period17 { get; set; }
[Parameter("Period18-Sell", DefaultValue = 56)]
public int Period18 { get; set; }
[Parameter("Period19-Buy", DefaultValue = 90)]
public int Period19 { get; set; }
[Parameter("Period20-Buy", DefaultValue = 21)]
public int Period20 { get; set; }
[Parameter("Period21-Sell", DefaultValue = 39)]
public int Period21 { get; set; }
[Parameter("Period22-Sell", DefaultValue = 57)]
public int Period22 { get; set; }
[Parameter("Period23-Sell", DefaultValue = 39)]
public int Period23 { get; set; }
[Parameter("Period24-Sell", DefaultValue = 78)]
public int Period24 { get; set; }
[Parameter("Period25-Sell", DefaultValue = 47)]
public int Period25 { get; set; }
[Parameter("Period26-Buy", DefaultValue = 55)]
public int Period26 { get; set; }
[Parameter("StopLoss-Buy", DefaultValue = 45)]
public int StopLoss { get; set; }
[Parameter("StopLoss1-Sell", DefaultValue = 53)]
public int StopLoss1 { get; set; }
[Parameter("TakeProfit-Buy", DefaultValue = 81)]
public int TakeProfit { get; set; }
[Parameter("TakeProfit1-Sell", DefaultValue = 94)]
public int TakeProfit1 { get; set; }
[Parameter("MA_period1-Buy", DefaultValue = 61)]
public int MA_period1 { get; set; }
[Parameter("MA_period2-Buy", DefaultValue = 46)]
public int MA_period2 { get; set; }
[Parameter("MA_period3-Sell", DefaultValue = 63)]
public int MA_period3 { get; set; }
[Parameter("MA_period4-Sell", DefaultValue = 38)]
public int MA_period4 { get; set; }
[Parameter("MA_period5-Sell", DefaultValue = 49)]
public int MA_period5 { get; set; }
[Parameter("MA_period6-Sell", DefaultValue = 39)]
public int MA_period6 { get; set; }
[Parameter("MA_period7-Buy", DefaultValue = 26)]
public int MA_period7 { get; set; }
[Parameter("MA_period8-Buy", DefaultValue = 50)]
public int MA_period8 { get; set; }
[Parameter("MA_period9-Sell", DefaultValue = 51)]
public int MA_period9 { get; set; }
[Parameter("MA_period10-Buy", DefaultValue = 53)]
public int MA_period10 { get; set; }
[Parameter("MA_period11-Buy", DefaultValue = 51)]
public int MA_period11 { get; set; }
[Parameter("MA_period20-Sell", DefaultValue = 52)]
public int MA_period20 { get; set; }
[Parameter("MA_period21-Sell", DefaultValue = 28)]
public int MA_period21 { get; set; }
[Parameter("MA_period30-Buy", DefaultValue = 64)]
public int MA_period30 { get; set; }
[Parameter("MA_period31-Buy", DefaultValue = 54)]
public int MA_period31 { get; set; }
[Parameter("MA_period40-Sell,Buy", DefaultValue = 56)]
public int MA_period40 { get; set; }
[Parameter("MA_period41-Sell,Buy", DefaultValue = 42)]
public int MA_period41 { get; set; }
[Parameter("MA_period50-Sell", DefaultValue = 53)]
public int MA_period50 { get; set; }
[Parameter("MA_period51-Sell", DefaultValue = 44)]
public int MA_period51 { get; set; }
[Parameter("MA_period70-Buy", DefaultValue = 30)]
public int MA_period70 { get; set; }
[Parameter("Tral_Start-Buy", DefaultValue = 193)]
public int Tral_Start { get; set; }
[Parameter("Tral_Start1-Sell", DefaultValue = 191)]
public int Tral_Start1 { get; set; }
[Parameter("Tral_Stop-Buy", DefaultValue = 75)]
public int Tral_Stop { get; set; }
[Parameter("Tral_Stop1-Sell", DefaultValue = 71)]
public int Tral_Stop1 { get; set; }
[Parameter("MFI_period-Buy,Sell", DefaultValue = 19)]
public int MFI_period { get; set; }
[Parameter("MFI_period1-Buy", DefaultValue = 7)]
public int MFI_period1 { get; set; }
[Parameter("MFI_period2-Sell", DefaultValue = 16)]
public int MFI_period2 { get; set; }
[Parameter("MFI_period10-Buy", DefaultValue = 20)]
public int MFI_period10 { get; set; }
[Parameter("MFI_period11-Buy,Sell", DefaultValue = 12)]
public int MFI_period11 { get; set; }
[Parameter("MFI_period20-Buy", DefaultValue = 7)]
public int MFI_period20 { get; set; }
[Parameter("MFI_period30-Sell", DefaultValue = 28)]
public int MFI_period30 { get; set; }
[Parameter("MO_period-Sell", DefaultValue = 12)]
public int MO_period { get; set; }
[Parameter("MO_period1-Buy", DefaultValue = 19)]
public int MO_period1 { get; set; }
[Parameter("MO_period2-Sell", DefaultValue = 26)]
public int MO_period2 { get; set; }
[Parameter("MO_period3-Buy", DefaultValue = 28)]
public int MO_period3 { get; set; }
[Parameter("MO_period4-Sell", DefaultValue = 30)]
public int MO_period4 { get; set; }
[Parameter("MO_period10-Buy", DefaultValue = 19)]
public int MO_period10 { get; set; }
[Parameter("MO_period11-Sell", DefaultValue = 23)]
public int MO_period11 { get; set; }
[Parameter("MO_period21-Buy,Sell", DefaultValue = 7)]
public int MO_period21 { get; set; }
private GHLsmawws _GHLsmawwsIndicator;
private GHLsmawws11 _GHLsmawws11Indicator;
private GHLsmawws12 _GHLsmawws12Indicator;
private GHLsmawws1 _GHLsmawws1Indicator;
private GHLsmawws3 _GHLsmawws3Indicator;
private GHLsmawws4 _GHLsmawws4Indicator;
private GHLsmawws10 _GHLsmawws10Indicator;
private GHLsmawws2 _GHLsmawws2Indicator;
private GannHighLowwws _gannHighLowwwsIndicator;
private GannHighLowwws3 _gannHighLowwws3Indicator;
private GannHighLowsma _gannHighLowsmaIndicator;
private GannHighLowtri _gannHighLowtriIndicator;
private GannHighLowWeight _gannHighLowWeightIndicator;
private GannHighLowTS _gannHighLowTSIndicator;
private GannHighLowTS1 _gannHighLowTS1Indicator;
private GannHighLowtri2 _gannHighLowtri2Indicator;
private GannHighLowtri1 _gannHighLowtri1Indicator;
private GannHighLowtri3 _gannHighLowtri3Indicator;
private GHExp _GHExpIndicator;
private GannHighLowsmatri _gannHighLowsmatriIndicator;
private GannHighLowsmatri1 _gannHighLowsmatri1Indicator;
private MovingAverage MA1;
private MovingAverage MA2;
private MovingAverage MA3;
private MovingAverage MA4;
private MovingAverage MA5;
private MovingAverage MA6;
private MovingAverage MA7;
private MovingAverage MA8;
private MovingAverage MA9;
private MovingAverage MA10;
private MovingAverage MA11;
private MovingAverage MA20;
private MovingAverage MA21;
private MovingAverage MA30;
private MovingAverage MA31;
private MovingAverage MA40;
private MovingAverage MA41;
private MovingAverage MA50;
private MovingAverage MA51;
private MovingAverage MA70;
private ChaikinMoneyFlow MFI;
private MoneyFlowIndex MFI2;
private MoneyFlowIndex MFI3;
private ChaikinMoneyFlow MFI10;
private MoneyFlowIndex MFI11;
private MoneyFlowIndex MFI20;
private ChaikinMoneyFlow MFI30;
private VerticalHorizontalFilter MO;
private VerticalHorizontalFilter MO1;
private VerticalHorizontalFilter MO3;
private MomentumOscillator MO4;
private MomentumOscillator MO5;
private MomentumOscillator MO10;
private MomentumOscillator MO11;
private MomentumOscillator MO21;
private Position _position;
private int e;
protected override void OnStart()
{
_GHLsmawwsIndicator = Indicators.GetIndicator<GHLsmawws>(Period);
_GHLsmawws1Indicator = Indicators.GetIndicator<GHLsmawws1>(Period16);
_GHLsmawws10Indicator = Indicators.GetIndicator<GHLsmawws10>(Period17);
_GHLsmawws2Indicator = Indicators.GetIndicator<GHLsmawws2>(Period1, Period2);
_gannHighLowwwsIndicator = Indicators.GetIndicator<GannHighLowwws>(Period3);
_gannHighLowsmaIndicator = Indicators.GetIndicator<GannHighLowsma>(Period4);
_gannHighLowtriIndicator = Indicators.GetIndicator<GannHighLowtri>(Period5);
_gannHighLowWeightIndicator = Indicators.GetIndicator<GannHighLowWeight>(Period6);
_gannHighLowtri1Indicator = Indicators.GetIndicator<GannHighLowtri1>(Period7);
_GHExpIndicator = Indicators.GetIndicator<GHExp>(Period10);
_gannHighLowTSIndicator = Indicators.GetIndicator<GannHighLowTS>(Period12);
_gannHighLowtri2Indicator = Indicators.GetIndicator<GannHighLowtri2>(Period13);
_gannHighLowsmatriIndicator = Indicators.GetIndicator<GannHighLowsmatri>(Period14);
_gannHighLowsmatri1Indicator = Indicators.GetIndicator<GannHighLowsmatri1>(Period15);
_gannHighLowtri3Indicator = Indicators.GetIndicator<GannHighLowtri3>(Period18);
_GHLsmawws11Indicator = Indicators.GetIndicator<GHLsmawws11>(Period19);
_GHLsmawws12Indicator = Indicators.GetIndicator<GHLsmawws12>(Period20);
_gannHighLowwws3Indicator = Indicators.GetIndicator<GannHighLowwws3>(Period21);
_GHLsmawws3Indicator = Indicators.GetIndicator<GHLsmawws3>(Period22, Period23);
_GHLsmawws4Indicator = Indicators.GetIndicator<GHLsmawws4>(Period24, Period25);
_gannHighLowTS1Indicator = Indicators.GetIndicator<GannHighLowTS1>(Period26);
MFI = Indicators.ChaikinMoneyFlow(MFI_period);
MFI2 = Indicators.MoneyFlowIndex(MFI_period1);
MFI3 = Indicators.MoneyFlowIndex(MFI_period2);
MFI10 = Indicators.ChaikinMoneyFlow(MFI_period10);
MFI11 = Indicators.MoneyFlowIndex(MFI_period11);
MFI20 = Indicators.MoneyFlowIndex(MFI_period20);
MFI30 = Indicators.ChaikinMoneyFlow(MFI_period30);
MO = Indicators.VerticalHorizontalFilter(MarketSeries.Close, MO_period);
MO1 = Indicators.VerticalHorizontalFilter(MarketSeries.Close, MO_period1);
MO3 = Indicators.VerticalHorizontalFilter(MarketSeries.Close, MO_period2);
MO4 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period3);
MO5 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period4);
MO10 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period10);
MO11 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period11);
MO21 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period21);
MA1 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period1);
MA2 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period2);
MA3 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period3);
MA4 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period4);
MA5 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period5);
MA6 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period6);
MA7 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period7);
MA8 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period8);
MA9 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period9);
MA10 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period10);
MA11 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period11);
MA20 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period20);
MA21 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period21);
MA30 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period30);
MA31 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period31);
MA40 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period40);
MA41 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period41);
MA50 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period50);
MA51 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period51);
MA70 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period70);
Positions.Opened += OnPositionsOpened;
Positions.Closed += OnPositionsClosed;
}
void OnPositionsClosed(PositionClosedEventArgs obj)
{
if (obj.Position.Label != Label)
return;
e = 0;
}
void OnPositionsOpened(PositionOpenedEventArgs obj)
{
if (obj.Position.Label != Label)
return;
_position = obj.Position;
if (_position.TradeType == TradeType.Buy)
{
ModifyPosition(_position, _position.EntryPrice - StopLoss * Symbol.PipSize, _position.EntryPrice + TakeProfit * Symbol.PipSize);
}
if (_position.TradeType == TradeType.Sell)
{
ModifyPosition(_position, _position.EntryPrice + StopLoss1 * Symbol.PipSize, _position.EntryPrice - TakeProfit1 * Symbol.PipSize);
}
}
protected override void OnBar()
{
if (UseDynamicVolume)
Volume = Symbol.NormalizeVolumeInUnits(Account.Balance * DynamicVolumeMultiplier);
double Bid = Symbol.Bid;
double Ask = Symbol.Ask;
double Point = Symbol.TickSize;
double MO2 = MO.Result[MO.Result.Count - 2];
double MO20 = MO4.Result[MO4.Result.Count - 2];
double MFI1 = MFI.Result[MFI.Result.Count - 2];
foreach (var position in Positions.FindAll(Label))
{
if (position.SymbolCode == Symbol.Code)
{
if (position.TradeType == TradeType.Buy)
{
if (Bid - position.EntryPrice >= Tral_Start * Point)
if (Bid - Tral_Stop * Point >= position.StopLoss)
ModifyPosition(position, Bid - Tral_Stop * Point, position.TakeProfit);
}
if (position.TradeType == TradeType.Sell)
{
if (position.EntryPrice - Ask >= Tral_Start1 * Point)
if (Ask + Tral_Stop1 * Point <= position.StopLoss)
ModifyPosition(position, Ask + Tral_Stop1 * Point, position.TakeProfit);
}
}
}
double spread = Symbol.Spread;
if (spread > MaxSpread)
return;
if (Positions.FindAll(Label).Length != 0)
return;
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.25 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO1.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.25 && MFI1 > 0.15 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA40.Result.IsRising() && MA2.Result.IsFalling() && MO1.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.25 && MFI1 > 0.15 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.25 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.25 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
/////////////////////////////////////////////////
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI20.Result.IsRising() && MO2 > 0.25 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.3 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO1.Result.IsRising() && MFI20.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws12Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.45 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws12Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.55 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
//////////////////////////////////////////////////////////
if (_GHLsmawws12Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.6 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws11Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.5 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO4.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO21.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.3 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
////////////////////////////////////////////////////////
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO21.Result.IsRising() && MFI.Result.IsRising() && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO21.Result.IsRising() && MFI11.Result.IsRising() && MFI1 > -0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA40.Result.IsRising() && MA2.Result.IsFalling() && MO21.Result.IsRising() && MFI11.Result.IsRising() && MFI1 > -0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws11Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.3 && MFI1 > 0.2 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws11Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO21.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.4 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
///////////////////////////////////////////////////////////
if (_gannHighLowsmaIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmaIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO21.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
/////////////////////////////////////////////////////////////
if (_gannHighLowtriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO21.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtriIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtriIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHExpIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA8.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHExpIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MA8.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
////////////////////////////////////////////////////////////
if (_gannHighLowTSIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowTSIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA41.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.2 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
////////////////////////////////////////////////////////////////
if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.9 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA41.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA41.Result.IsFalling() && MO4.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.45 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA41.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.9 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MFI1 > 0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
//////////////////////////////////////////////////////////////
if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.35 && MFI1 > 0.15 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA70.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.9 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI11.Result.IsRising() && MO20 > 100.3 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
/////////////////////////////////////////////////////////
if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA70.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.9 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.5 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MFI1 > 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MFI1 > 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MFI1 > -0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
///////////////////////////////////////////////////////////
if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MFI1 > 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MA7.Result.IsRising() && MFI11.Result.IsRising() && MFI1 > 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.5 && e == 0)
{
ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label);
e = 1;
}
/////////////////////////////// Sell ///////////////////////////////////////// SELL
if (_GHLsmawws2Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws2Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws4Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
/////////////////////////////////////////////////
if (_GHLsmawws2Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.35 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws4Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.35 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MO3.Result.IsRising() && MFI30.Result.IsFalling() && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA50.Result.IsFalling() && MA51.Result.IsFalling() && MO3.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.1 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowwws3Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MO3.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.1 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
/////////////////////////////////////////////////////////
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MO3.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO5.Result.IsRising() && MFI.Result.IsFalling() && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO21.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.35 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO5.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.45 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO5.Result.IsRising() && MFI30.Result.IsFalling() && MO2 < 0.45 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
//////////////////////////////////////////////////////
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO21.Result.IsRising() && MFI30.Result.IsFalling() && MO2 < 0.4 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowWeightIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.35 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtri1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO5.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.35 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.15 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.33 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
////////////////////////////////////////////////
if (_gannHighLowtri2Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO5.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtri2Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO21.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtri2Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO5.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtri2Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO21.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.1 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO5.Result.IsRising() && MFI.Result.IsFalling() && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
//////////////////////////////////////////////////////
if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO5.Result.IsRising() && MFI30.Result.IsFalling() && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO5.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < -0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO21.Result.IsRising() && MFI30.Result.IsFalling() && MFI1 < 0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO21.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < -0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO5.Result.IsRising() && MFI30.Result.IsFalling() && MFI1 < 0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
////////////////////////////////////////////////////////////
if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO5.Result.IsRising() && MFI3.Result.IsFalling() && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MA9.Result.IsFalling() && MFI.Result.IsFalling() && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MA9.Result.IsFalling() && MFI30.Result.IsFalling() && MO20 < 100.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws10Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_GHLsmawws10Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
///////////////////////////////////////////////////
if (_GHLsmawws10Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO.Result.IsRising() && MFI30.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtri3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.15 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtri3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MA9.Result.IsRising() && MFI30.Result.IsFalling() && MFI1 < 0.15 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtri3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA50.Result.IsFalling() && MA51.Result.IsFalling() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < -0.05 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
if (_gannHighLowtri3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.15 && e == 0)
{
ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label);
e = 1;
}
}
}
}
Mountain
10 Dec 2018, 14:59
Hi,
I can't send you the fotos so I describe the problem again and send you the code.
Backtestresults after I have loaded the currency pair new:
Netto Gewinn 8.002,32 €
Gesamt Aufträge 421
Verlust Aufträge 42
If I make a second update the results are:
Netto Gewinn 5225 €
Gesamt Aufträge 437
Verlust Aufträge 85
A look at the parameters shows, that they have changed without I have done anything. When I load the currency pair new I have the correct parameters again.
// ------------------------------------------------------------------------------- // // // // ------------------------------------------------------------------------------- using System; using cAlgo.API; using cAlgo.API.Requests; using cAlgo.API.Indicators; using cAlgo.Indicators; using cAlgo.API.Internals; namespace cAlgo.Robots { [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)] public class NewAUDUSD : Robot { [Parameter("Label", DefaultValue = "NewAUDUSD")] public string Label { get; set; } [Parameter("Max-Spread", DefaultValue = 2, MinValue = 0.1, Step = 0.1)] public double MaxSpread { get; set; } [Parameter("Volume", DefaultValue = 10000.0, MinValue = 1000.0, Step = 1000.0)] public double Volume { get; set; } [Parameter("Use-Dynamic-Volume", DefaultValue = false)] public bool UseDynamicVolume { get; set; } [Parameter("Dynamic-Volume-Multiplier", DefaultValue = 2.0, MinValue = 0.5, MaxValue = 10.0, Step = 0.5)] public double DynamicVolumeMultiplier { get; set; } [Parameter("Period-Buy", DefaultValue = 58)] public int Period { get; set; } [Parameter("Period1-Sell", DefaultValue = 66)] public int Period1 { get; set; } [Parameter("Period2-Sell", DefaultValue = 39)] public int Period2 { get; set; } [Parameter("Period3-Sell", DefaultValue = 41)] public int Period3 { get; set; } [Parameter("Period4-Buy", DefaultValue = 69)] public int Period4 { get; set; } [Parameter("Period5-Buy", DefaultValue = 62)] public int Period5 { get; set; } [Parameter("Period6-Sell", DefaultValue = 64)] public int Period6 { get; set; } [Parameter("Period7-Sell", DefaultValue = 26)] public int Period7 { get; set; } [Parameter("Period10-Buy", DefaultValue = 64)] public int Period10 { get; set; } [Parameter("Period12-Buy", DefaultValue = 46)] public int Period12 { get; set; } [Parameter("Period13-Sell", DefaultValue = 38)] public int Period13 { get; set; } [Parameter("Period14-Buy", DefaultValue = 48)] public int Period14 { get; set; } [Parameter("Period15-Sell", DefaultValue = 45)] public int Period15 { get; set; } [Parameter("Period16-Buy", DefaultValue = 60)] public int Period16 { get; set; } [Parameter("Period17-Sell", DefaultValue = 87)] public int Period17 { get; set; } [Parameter("Period18-Sell", DefaultValue = 56)] public int Period18 { get; set; } [Parameter("Period19-Buy", DefaultValue = 90)] public int Period19 { get; set; } [Parameter("Period20-Buy", DefaultValue = 21)] public int Period20 { get; set; } [Parameter("Period21-Sell", DefaultValue = 39)] public int Period21 { get; set; } [Parameter("Period22-Sell", DefaultValue = 57)] public int Period22 { get; set; } [Parameter("Period23-Sell", DefaultValue = 39)] public int Period23 { get; set; } [Parameter("Period24-Sell", DefaultValue = 78)] public int Period24 { get; set; } [Parameter("Period25-Sell", DefaultValue = 47)] public int Period25 { get; set; } [Parameter("Period26-Buy", DefaultValue = 55)] public int Period26 { get; set; } [Parameter("StopLoss-Buy", DefaultValue = 45)] public int StopLoss { get; set; } [Parameter("StopLoss1-Sell", DefaultValue = 53)] public int StopLoss1 { get; set; } [Parameter("TakeProfit-Buy", DefaultValue = 81)] public int TakeProfit { get; set; } [Parameter("TakeProfit1-Sell", DefaultValue = 94)] public int TakeProfit1 { get; set; } [Parameter("MA_period1-Buy", DefaultValue = 61)] public int MA_period1 { get; set; } [Parameter("MA_period2-Buy", DefaultValue = 46)] public int MA_period2 { get; set; } [Parameter("MA_period3-Sell", DefaultValue = 63)] public int MA_period3 { get; set; } [Parameter("MA_period4-Sell", DefaultValue = 38)] public int MA_period4 { get; set; } [Parameter("MA_period5-Sell", DefaultValue = 49)] public int MA_period5 { get; set; } [Parameter("MA_period6-Sell", DefaultValue = 39)] public int MA_period6 { get; set; } [Parameter("MA_period7-Buy", DefaultValue = 26)] public int MA_period7 { get; set; } [Parameter("MA_period8-Buy", DefaultValue = 50)] public int MA_period8 { get; set; } [Parameter("MA_period9-Sell", DefaultValue = 51)] public int MA_period9 { get; set; } [Parameter("MA_period10-Buy", DefaultValue = 53)] public int MA_period10 { get; set; } [Parameter("MA_period11-Buy", DefaultValue = 51)] public int MA_period11 { get; set; } [Parameter("MA_period20-Sell", DefaultValue = 52)] public int MA_period20 { get; set; } [Parameter("MA_period21-Sell", DefaultValue = 28)] public int MA_period21 { get; set; } [Parameter("MA_period30-Buy", DefaultValue = 64)] public int MA_period30 { get; set; } [Parameter("MA_period31-Buy", DefaultValue = 54)] public int MA_period31 { get; set; } [Parameter("MA_period40-Sell,Buy", DefaultValue = 56)] public int MA_period40 { get; set; } [Parameter("MA_period41-Sell,Buy", DefaultValue = 42)] public int MA_period41 { get; set; } [Parameter("MA_period50-Sell", DefaultValue = 53)] public int MA_period50 { get; set; } [Parameter("MA_period51-Sell", DefaultValue = 44)] public int MA_period51 { get; set; } [Parameter("MA_period70-Buy", DefaultValue = 30)] public int MA_period70 { get; set; } [Parameter("Tral_Start-Buy", DefaultValue = 193)] public int Tral_Start { get; set; } [Parameter("Tral_Start1-Sell", DefaultValue = 191)] public int Tral_Start1 { get; set; } [Parameter("Tral_Stop-Buy", DefaultValue = 75)] public int Tral_Stop { get; set; } [Parameter("Tral_Stop1-Sell", DefaultValue = 71)] public int Tral_Stop1 { get; set; } [Parameter("MFI_period-Buy,Sell", DefaultValue = 19)] public int MFI_period { get; set; } [Parameter("MFI_period1-Buy", DefaultValue = 7)] public int MFI_period1 { get; set; } [Parameter("MFI_period2-Sell", DefaultValue = 16)] public int MFI_period2 { get; set; } [Parameter("MFI_period10-Buy", DefaultValue = 20)] public int MFI_period10 { get; set; } [Parameter("MFI_period11-Buy,Sell", DefaultValue = 12)] public int MFI_period11 { get; set; } [Parameter("MFI_period20-Buy", DefaultValue = 7)] public int MFI_period20 { get; set; } [Parameter("MFI_period30-Sell", DefaultValue = 28)] public int MFI_period30 { get; set; } [Parameter("MO_period-Sell", DefaultValue = 12)] public int MO_period { get; set; } [Parameter("MO_period1-Buy", DefaultValue = 19)] public int MO_period1 { get; set; } [Parameter("MO_period2-Sell", DefaultValue = 26)] public int MO_period2 { get; set; } [Parameter("MO_period3-Buy", DefaultValue = 28)] public int MO_period3 { get; set; } [Parameter("MO_period4-Sell", DefaultValue = 30)] public int MO_period4 { get; set; } [Parameter("MO_period10-Buy", DefaultValue = 19)] public int MO_period10 { get; set; } [Parameter("MO_period11-Sell", DefaultValue = 23)] public int MO_period11 { get; set; } [Parameter("MO_period21-Buy,Sell", DefaultValue = 7)] public int MO_period21 { get; set; } private GHLsmawws _GHLsmawwsIndicator; private GHLsmawws11 _GHLsmawws11Indicator; private GHLsmawws12 _GHLsmawws12Indicator; private GHLsmawws1 _GHLsmawws1Indicator; private GHLsmawws3 _GHLsmawws3Indicator; private GHLsmawws4 _GHLsmawws4Indicator; private GHLsmawws10 _GHLsmawws10Indicator; private GHLsmawws2 _GHLsmawws2Indicator; private GannHighLowwws _gannHighLowwwsIndicator; private GannHighLowwws3 _gannHighLowwws3Indicator; private GannHighLowsma _gannHighLowsmaIndicator; private GannHighLowtri _gannHighLowtriIndicator; private GannHighLowWeight _gannHighLowWeightIndicator; private GannHighLowTS _gannHighLowTSIndicator; private GannHighLowTS1 _gannHighLowTS1Indicator; private GannHighLowtri2 _gannHighLowtri2Indicator; private GannHighLowtri1 _gannHighLowtri1Indicator; private GannHighLowtri3 _gannHighLowtri3Indicator; private GHExp _GHExpIndicator; private GannHighLowsmatri _gannHighLowsmatriIndicator; private GannHighLowsmatri1 _gannHighLowsmatri1Indicator; private MovingAverage MA1; private MovingAverage MA2; private MovingAverage MA3; private MovingAverage MA4; private MovingAverage MA5; private MovingAverage MA6; private MovingAverage MA7; private MovingAverage MA8; private MovingAverage MA9; private MovingAverage MA10; private MovingAverage MA11; private MovingAverage MA20; private MovingAverage MA21; private MovingAverage MA30; private MovingAverage MA31; private MovingAverage MA40; private MovingAverage MA41; private MovingAverage MA50; private MovingAverage MA51; private MovingAverage MA70; private ChaikinMoneyFlow MFI; private MoneyFlowIndex MFI2; private MoneyFlowIndex MFI3; private ChaikinMoneyFlow MFI10; private MoneyFlowIndex MFI11; private MoneyFlowIndex MFI20; private ChaikinMoneyFlow MFI30; private VerticalHorizontalFilter MO; private VerticalHorizontalFilter MO1; private VerticalHorizontalFilter MO3; private MomentumOscillator MO4; private MomentumOscillator MO5; private MomentumOscillator MO10; private MomentumOscillator MO11; private MomentumOscillator MO21; private Position _position; private int e; protected override void OnStart() { _GHLsmawwsIndicator = Indicators.GetIndicator<GHLsmawws>(Period); _GHLsmawws1Indicator = Indicators.GetIndicator<GHLsmawws1>(Period16); _GHLsmawws10Indicator = Indicators.GetIndicator<GHLsmawws10>(Period17); _GHLsmawws2Indicator = Indicators.GetIndicator<GHLsmawws2>(Period1, Period2); _gannHighLowwwsIndicator = Indicators.GetIndicator<GannHighLowwws>(Period3); _gannHighLowsmaIndicator = Indicators.GetIndicator<GannHighLowsma>(Period4); _gannHighLowtriIndicator = Indicators.GetIndicator<GannHighLowtri>(Period5); _gannHighLowWeightIndicator = Indicators.GetIndicator<GannHighLowWeight>(Period6); _gannHighLowtri1Indicator = Indicators.GetIndicator<GannHighLowtri1>(Period7); _GHExpIndicator = Indicators.GetIndicator<GHExp>(Period10); _gannHighLowTSIndicator = Indicators.GetIndicator<GannHighLowTS>(Period12); _gannHighLowtri2Indicator = Indicators.GetIndicator<GannHighLowtri2>(Period13); _gannHighLowsmatriIndicator = Indicators.GetIndicator<GannHighLowsmatri>(Period14); _gannHighLowsmatri1Indicator = Indicators.GetIndicator<GannHighLowsmatri1>(Period15); _gannHighLowtri3Indicator = Indicators.GetIndicator<GannHighLowtri3>(Period18); _GHLsmawws11Indicator = Indicators.GetIndicator<GHLsmawws11>(Period19); _GHLsmawws12Indicator = Indicators.GetIndicator<GHLsmawws12>(Period20); _gannHighLowwws3Indicator = Indicators.GetIndicator<GannHighLowwws3>(Period21); _GHLsmawws3Indicator = Indicators.GetIndicator<GHLsmawws3>(Period22, Period23); _GHLsmawws4Indicator = Indicators.GetIndicator<GHLsmawws4>(Period24, Period25); _gannHighLowTS1Indicator = Indicators.GetIndicator<GannHighLowTS1>(Period26); MFI = Indicators.ChaikinMoneyFlow(MFI_period); MFI2 = Indicators.MoneyFlowIndex(MFI_period1); MFI3 = Indicators.MoneyFlowIndex(MFI_period2); MFI10 = Indicators.ChaikinMoneyFlow(MFI_period10); MFI11 = Indicators.MoneyFlowIndex(MFI_period11); MFI20 = Indicators.MoneyFlowIndex(MFI_period20); MFI30 = Indicators.ChaikinMoneyFlow(MFI_period30); MO = Indicators.VerticalHorizontalFilter(MarketSeries.Close, MO_period); MO1 = Indicators.VerticalHorizontalFilter(MarketSeries.Close, MO_period1); MO3 = Indicators.VerticalHorizontalFilter(MarketSeries.Close, MO_period2); MO4 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period3); MO5 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period4); MO10 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period10); MO11 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period11); MO21 = Indicators.MomentumOscillator(MarketSeries.Close, MO_period21); MA1 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period1); MA2 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period2); MA3 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period3); MA4 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period4); MA5 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period5); MA6 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period6); MA7 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period7); MA8 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period8); MA9 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period9); MA10 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period10); MA11 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period11); MA20 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period20); MA21 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period21); MA30 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period30); MA31 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period31); MA40 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period40); MA41 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period41); MA50 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period50); MA51 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period51); MA70 = Indicators.SimpleMovingAverage(MarketSeries.Close, MA_period70); Positions.Opened += OnPositionsOpened; Positions.Closed += OnPositionsClosed; } void OnPositionsClosed(PositionClosedEventArgs obj) { if (obj.Position.Label != Label) return; e = 0; } void OnPositionsOpened(PositionOpenedEventArgs obj) { if (obj.Position.Label != Label) return; _position = obj.Position; if (_position.TradeType == TradeType.Buy) { ModifyPosition(_position, _position.EntryPrice - StopLoss * Symbol.PipSize, _position.EntryPrice + TakeProfit * Symbol.PipSize); } if (_position.TradeType == TradeType.Sell) { ModifyPosition(_position, _position.EntryPrice + StopLoss1 * Symbol.PipSize, _position.EntryPrice - TakeProfit1 * Symbol.PipSize); } } protected override void OnBar() { if (UseDynamicVolume) Volume = Symbol.NormalizeVolumeInUnits(Account.Balance * DynamicVolumeMultiplier); double Bid = Symbol.Bid; double Ask = Symbol.Ask; double Point = Symbol.TickSize; double MO2 = MO.Result[MO.Result.Count - 2]; double MO20 = MO4.Result[MO4.Result.Count - 2]; double MFI1 = MFI.Result[MFI.Result.Count - 2]; foreach (var position in Positions.FindAll(Label)) { if (position.SymbolCode == Symbol.Code) { if (position.TradeType == TradeType.Buy) { if (Bid - position.EntryPrice >= Tral_Start * Point) if (Bid - Tral_Stop * Point >= position.StopLoss) ModifyPosition(position, Bid - Tral_Stop * Point, position.TakeProfit); } if (position.TradeType == TradeType.Sell) { if (position.EntryPrice - Ask >= Tral_Start1 * Point) if (Ask + Tral_Stop1 * Point <= position.StopLoss) ModifyPosition(position, Ask + Tral_Stop1 * Point, position.TakeProfit); } } } double spread = Symbol.Spread; if (spread > MaxSpread) return; if (Positions.FindAll(Label).Length != 0) return; if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.25 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO1.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.25 && MFI1 > 0.15 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA40.Result.IsRising() && MA2.Result.IsFalling() && MO1.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.25 && MFI1 > 0.15 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.25 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.25 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } ///////////////////////////////////////////////// if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI20.Result.IsRising() && MO2 > 0.25 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.3 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO1.Result.IsRising() && MFI20.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawws12Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.45 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawws12Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.55 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } ////////////////////////////////////////////////////////// if (_GHLsmawws12Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO1.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.6 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawws11Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.5 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO4.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MO21.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.3 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } //////////////////////////////////////////////////////// if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO21.Result.IsRising() && MFI.Result.IsRising() && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO21.Result.IsRising() && MFI11.Result.IsRising() && MFI1 > -0.05 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawwsIndicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA40.Result.IsRising() && MA2.Result.IsFalling() && MO21.Result.IsRising() && MFI11.Result.IsRising() && MFI1 > -0.05 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawws11Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.3 && MFI1 > 0.2 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawws11Indicator.Result.HasCrossedBelow(MarketSeries.Open, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO21.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.4 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } /////////////////////////////////////////////////////////// if (_gannHighLowsmaIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmaIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowtriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowtriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowtriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO21.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } ///////////////////////////////////////////////////////////// if (_gannHighLowtriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MO21.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowtriIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowtriIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHExpIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA8.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHExpIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MA8.Result.IsRising() && MFI2.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } //////////////////////////////////////////////////////////// if (_gannHighLowTSIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowTSIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA41.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.2 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } //////////////////////////////////////////////////////////////// if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.9 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA41.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA41.Result.IsFalling() && MO4.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.45 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsRising() && MA41.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.9 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowTS1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MO4.Result.IsRising() && MFI.Result.IsRising() && MFI1 > 0.05 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } ////////////////////////////////////////////////////////////// if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI11.Result.IsRising() && MO2 > 0.35 && MFI1 > 0.15 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA70.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.9 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI11.Result.IsRising() && MO20 > 100.3 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } ///////////////////////////////////////////////////////// if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA70.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.9 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO2 > 0.5 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatriIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MFI1 > 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA1.Result.IsRising() && MA2.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MFI1 > 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA30.Result.IsRising() && MA31.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MFI1 > -0.05 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } /////////////////////////////////////////////////////////// if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MFI1 > 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MA7.Result.IsRising() && MFI11.Result.IsRising() && MFI1 > 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } if (_GHLsmawws1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA10.Result.IsRising() && MA11.Result.IsFalling() && MA7.Result.IsRising() && MFI.Result.IsRising() && MO20 > 99.5 && e == 0) { ExecuteMarketOrder(TradeType.Buy, Symbol, Volume, Label); e = 1; } /////////////////////////////// Sell ///////////////////////////////////////// SELL if (_GHLsmawws2Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_GHLsmawws2Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_GHLsmawws3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_GHLsmawws3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_GHLsmawws4Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } ///////////////////////////////////////////////// if (_GHLsmawws2Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.35 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_GHLsmawws4Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.35 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MO3.Result.IsRising() && MFI30.Result.IsFalling() && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA50.Result.IsFalling() && MA51.Result.IsFalling() && MO3.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.1 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowwws3Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MO3.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.1 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } ///////////////////////////////////////////////////////// if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MO3.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO5.Result.IsRising() && MFI.Result.IsFalling() && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO21.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.35 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO5.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.45 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO5.Result.IsRising() && MFI30.Result.IsFalling() && MO2 < 0.45 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } ////////////////////////////////////////////////////// if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO21.Result.IsRising() && MFI30.Result.IsFalling() && MO2 < 0.4 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowWeightIndicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.35 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowtri1Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO5.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.35 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.15 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowwwsIndicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.33 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } //////////////////////////////////////////////// if (_gannHighLowtri2Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO5.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowtri2Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO21.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowtri2Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO5.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.05 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowtri2Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MO21.Result.IsRising() && MFI3.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.1 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO5.Result.IsRising() && MFI.Result.IsFalling() && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } ////////////////////////////////////////////////////// if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO5.Result.IsRising() && MFI30.Result.IsFalling() && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO5.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < -0.05 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO21.Result.IsRising() && MFI30.Result.IsFalling() && MFI1 < 0.05 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO21.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < -0.05 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO5.Result.IsRising() && MFI30.Result.IsFalling() && MFI1 < 0.05 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } //////////////////////////////////////////////////////////// if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MO5.Result.IsRising() && MFI3.Result.IsFalling() && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MA9.Result.IsFalling() && MFI.Result.IsFalling() && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowsmatri1Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsRising() && MA9.Result.IsFalling() && MFI30.Result.IsFalling() && MO20 < 100.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_GHLsmawws10Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA3.Result.IsFalling() && MA4.Result.IsRising() && MO.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_GHLsmawws10Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO.Result.IsRising() && MFI.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } /////////////////////////////////////////////////// if (_GHLsmawws10Indicator.Result.HasCrossedBelow(MarketSeries.Close, 1) && MA40.Result.IsFalling() && MA41.Result.IsRising() && MO.Result.IsRising() && MFI30.Result.IsFalling() && MO2 < 0.4 && MFI1 < 0.0 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowtri3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.15 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowtri3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA5.Result.IsFalling() && MA6.Result.IsFalling() && MA9.Result.IsRising() && MFI30.Result.IsFalling() && MFI1 < 0.15 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowtri3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA50.Result.IsFalling() && MA51.Result.IsFalling() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < -0.05 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } if (_gannHighLowtri3Indicator.Result.HasCrossedAbove(MarketSeries.Close, 1) && MA20.Result.IsFalling() && MA21.Result.IsRising() && MA9.Result.IsRising() && MFI.Result.IsFalling() && MFI1 < 0.15 && e == 0) { ExecuteMarketOrder(TradeType.Sell, Symbol, Volume, Label); e = 1; } } } }@Mountain