├── DotNet
└── QuantSys
│ ├── Analytics
│ ├── StatisticalModeling
│ │ ├── GARCH.cs
│ │ ├── LinearRegression.cs
│ │ ├── PolynomialRegression.cs
│ │ ├── VarianceRatio.cs
│ │ ├── ARMA.cs
│ │ ├── HurstEstimation.cs
│ │ └── PCA
│ │ │ └── PCA.cs
│ ├── Timeseries
│ │ └── Indicators
│ │ │ ├── Averages
│ │ │ ├── WMA.cs
│ │ │ ├── QEMA.cs
│ │ │ ├── GDEMA.cs
│ │ │ ├── AdaptiveSmoothing.cs
│ │ │ ├── TEMA.cs
│ │ │ ├── SMA.cs
│ │ │ ├── ZLEMA.cs
│ │ │ ├── QSPolyMA.cs
│ │ │ ├── EMA.cs
│ │ │ └── KAMA.cs
│ │ │ ├── Oscillators
│ │ │ ├── Aroon.cs
│ │ │ ├── STOCH.cs
│ │ │ ├── ADX.cs
│ │ │ ├── CMO.cs
│ │ │ ├── AC.cs
│ │ │ ├── AO.cs
│ │ │ ├── CCI.cs
│ │ │ ├── TRIX.cs
│ │ │ ├── WilliamsR.cs
│ │ │ ├── MACD.cs
│ │ │ ├── Chaikin.cs
│ │ │ ├── PFE.cs
│ │ │ ├── ATR.cs
│ │ │ ├── RSI.cs
│ │ │ ├── DI.cs
│ │ │ ├── KST.cs
│ │ │ ├── RWI.cs
│ │ │ └── UltimateOscillator.cs
│ │ │ ├── SRLevels
│ │ │ ├── DenmarkLevels.cs
│ │ │ ├── FibonacciLevels.cs
│ │ │ └── PivotLevels.cs
│ │ │ ├── Misc
│ │ │ ├── ParabolicSAR.cs
│ │ │ ├── RVI.cs
│ │ │ ├── MFM.cs
│ │ │ ├── GenericContainer.cs
│ │ │ ├── ForceIndex.cs
│ │ │ ├── Covariance.cs
│ │ │ ├── HurstIndicator.cs
│ │ │ ├── HistoricalVol.cs
│ │ │ ├── CrossoverIndex.cs
│ │ │ ├── ROC.cs
│ │ │ ├── RSquared.cs
│ │ │ ├── ReversalGenesis.cs
│ │ │ ├── Genesis.cs
│ │ │ ├── MFI.cs
│ │ │ ├── HeikenAshi.cs
│ │ │ └── Divergence.cs
│ │ │ ├── Abstraction
│ │ │ ├── IIndicator.cs
│ │ │ ├── AbstractAverage.cs
│ │ │ ├── AbstractChannel.cs
│ │ │ ├── AbstractIndicator.cs
│ │ │ ├── AbstractMultiSymbolIndicator.cs
│ │ │ └── AbstractPivotPoints.cs
│ │ │ ├── Channels
│ │ │ ├── GannHiLo.cs
│ │ │ ├── QSVWChannel.cs
│ │ │ ├── BollingerBands.cs
│ │ │ ├── KirshenbaumBands.cs
│ │ │ └── QSPolyChannel.cs
│ │ │ └── Transforms
│ │ │ ├── DWT.cs
│ │ │ └── PercentileRank.cs
│ ├── DenseVectorExtension.cs
│ ├── SignalProcessing
│ │ └── SignalTransform.cs
│ └── IndicatorMatrix.cs
│ ├── TradeEngine
│ ├── Simulation
│ │ ├── Account
│ │ │ ├── Order
│ │ │ │ ├── IOrder.cs
│ │ │ │ ├── MarketOrder.cs
│ │ │ │ ├── LimitOrder.cs
│ │ │ │ └── StopOrder.cs
│ │ │ ├── Position.cs
│ │ │ └── Portfolio.cs
│ │ └── Performance
│ │ │ ├── TradeRecord.cs
│ │ │ └── BacktestPerformance.cs
│ ├── MarketInterface
│ │ └── FXCMInterface
│ │ │ ├── Functions
│ │ │ ├── Jobs
│ │ │ │ ├── IJob.cs
│ │ │ │ ├── Job_IndicatorSet.cs
│ │ │ │ ├── Job_OptimalPortfolio.cs
│ │ │ │ ├── Job_SingleStatistic.cs
│ │ │ │ └── Job_SymbolSet.cs
│ │ │ ├── AccountInformation.cs
│ │ │ └── HistoricPriceEngine.cs
│ │ │ ├── EventArguments
│ │ │ ├── AccountInformationEventArg.cs
│ │ │ └── MarketDataEventArg.cs
│ │ │ └── Listener
│ │ │ ├── SessionStatusListener.cs
│ │ │ └── ResponseListener.cs
│ ├── AccountManagement
│ │ ├── IAccountManager.cs
│ │ └── LiveAccountManager.cs
│ └── Strategy
│ │ ├── MACrossExit.cs
│ │ ├── AbstractStrategy.cs
│ │ ├── RSIStrategy.cs
│ │ ├── MACrossEntry.cs
│ │ ├── ACStrat.cs
│ │ ├── Pyramid.cs
│ │ ├── ChannelStrategy.cs
│ │ ├── NeuralNetworkStrategy.cs
│ │ └── GenesisStrategy.cs
│ ├── MarketData
│ ├── Symbol.cs
│ ├── Tick.cs
│ ├── MultiQuantum.cs
│ ├── Quantum.cs
│ └── Timeframe.cs
│ ├── QuantSys.csproj.user
│ ├── Visualization
│ ├── TableGeneration.cs
│ └── Highstocks
│ │ ├── ChartOption.cs
│ │ └── HighstockFlag.cs
│ ├── MachineLearning
│ ├── GeneticAlgorithm
│ │ ├── Genes
│ │ │ ├── Constraints
│ │ │ │ └── GeneConstraint.cs
│ │ │ ├── Gene.cs
│ │ │ ├── BinaryGene.cs
│ │ │ └── RealCodedGene.cs
│ │ ├── Crossover.cs
│ │ ├── Chromosome.cs
│ │ ├── Population.cs
│ │ └── Selection.cs
│ ├── SupportVectorMachine
│ │ └── Predict.cs
│ └── NeuralNetwork
│ │ ├── PSO.cs
│ │ └── TwoStageNN.cs
│ ├── Util
│ ├── DateTimeUtils.cs
│ └── ExcelUtil.cs
│ └── DataStructures
│ └── MovingQueue.cs
└── README.md
/DotNet/QuantSys/Analytics/StatisticalModeling/GARCH.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.StatisticalModeling
2 | {
3 | class GARCH
4 | {
5 |
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/Averages/WMA.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.Averages
2 | {
3 | class WMA
4 | {
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/Averages/QEMA.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.Averages
2 | {
3 | public class QEMA
4 | {
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/Oscillators/Aroon.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.Oscillators
2 | {
3 | class Aroon
4 | {
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/Oscillators/STOCH.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.Oscillators
2 | {
3 | internal class STOCH
4 | {
5 | }
6 | }
--------------------------------------------------------------------------------
/DotNet/QuantSys/TradeEngine/Simulation/Account/Order/IOrder.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.TradeEngine.Simulation.Account.Order
2 | {
3 | public interface IOrder
4 | {
5 |
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/SRLevels/DenmarkLevels.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.SRLevels
2 | {
3 | class DenmarkLevels
4 | {
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/Misc/ParabolicSAR.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.Misc
2 | {
3 | public class ParabolicSAR
4 | {
5 |
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/Misc/RVI.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.Misc
2 | {
3 | //Relative Vigor Index
4 | class RVI
5 | {
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/SRLevels/FibonacciLevels.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.SRLevels
2 | {
3 | class FibonacciLevels
4 | {
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/Oscillators/ADX.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.Oscillators
2 | {
3 | public class ADX //Average Directional Index
4 | {
5 | }
6 | }
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/Abstraction/IIndicator.cs:
--------------------------------------------------------------------------------
1 | using QuantSys.MarketData;
2 |
3 | namespace QuantSys.Indicators.Abstraction
4 | {
5 | public interface IIndicator
6 | {
7 | double this[int index] { get; }
8 | double HandleNextTick(Tick t);
9 |
10 | }
11 | }
--------------------------------------------------------------------------------
/DotNet/QuantSys/TradeEngine/MarketInterface/FXCMInterface/Functions/Jobs/IJob.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.TradeEngine.MarketInterface.FXCMInterface.Functions.Jobs
2 | {
3 | public interface IJob
4 | {
5 | void RunJob(FXSession fxsession);
6 | bool UpdateJob(object data);
7 | void FinishAndProcess();
8 | }
9 | }
--------------------------------------------------------------------------------
/DotNet/QuantSys/MarketData/Symbol.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.MarketData
2 | {
3 | public class Symbol
4 | {
5 | public Symbol(string symbol)
6 | {
7 | SymbolString = symbol;
8 | }
9 |
10 | public string SymbolString { get; set; }
11 |
12 |
13 | public override int GetHashCode()
14 | {
15 | return SymbolString.GetHashCode();
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/Timeseries/Indicators/Oscillators/CMO.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Analytics.Timeseries.Indicators.Oscillators
2 | {
3 | public class CMO //Chande Momentum Oscillator
4 | {
5 | // 100 * (s_u - s_d) / (s_u + s_d)
6 | //Su is the sum of the difference between today’s close and yesterday’s close on up days.
7 | //Sd represents the absolute value of the difference between today’s
8 | // close and yesterday’s close on down days.
9 | }
10 | }
--------------------------------------------------------------------------------
/DotNet/QuantSys/QuantSys.csproj.user:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | publish\
5 |
6 |
7 |
8 |
9 |
10 | en-US
11 | false
12 |
13 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Visualization/TableGeneration.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using System.Web;
7 | using System.Web.UI.HtmlControls;
8 |
9 | namespace QuantSys.Visualization
10 | {
11 | class TableGeneration
12 | {
13 | HtmlTable table = new HtmlTable();
14 |
15 | public HtmlTable Table
16 | {
17 | get { return table; }
18 | set { table = value; }
19 | }
20 |
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Visualization/Highstocks/ChartOption.cs:
--------------------------------------------------------------------------------
1 | namespace QuantSys.Visualization.Highstocks
2 | {
3 | public class ChartOption
4 | {
5 | public int YPosition { get; set; }
6 | public int Height { get; set; }
7 | public string ChartType { get; set; }
8 | public bool Layover { get; set; }
9 | public ChartOption()
10 | {
11 | YPosition = 0;
12 | Height = 200;
13 | ChartType = "spline";
14 | Layover = false;
15 | }
16 |
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/Analytics/DenseVectorExtension.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using MathNet.Numerics.LinearAlgebra.Double;
7 |
8 | namespace QuantSys.Analytics
9 | {
10 | public static class DenseVectorExtension
11 | {
12 | public static DenseVector SubVector(this DenseVector d, int startIndex, int endIndex)
13 | {
14 | return (DenseVector)d.SubVector(startIndex, d.Count - endIndex);
15 | }
16 |
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/DotNet/QuantSys/MachineLearning/GeneticAlgorithm/Genes/Constraints/GeneConstraint.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace QuantSys.MachineLearning.GeneticAlgorithm.Genes.Constraints
4 | {
5 | public class GeneConstraint
6 | {
7 | public Func