├── .gitignore
├── LICENSE
├── README.md
└── src
├── .nuget
├── NuGet.Config
├── NuGet.exe
└── NuGet.targets
├── FinancialCharting.Library
├── Configuration
│ └── QuandlSettings.cs
├── Enum
│ ├── IndicatorType.cs
│ ├── SortOrderType.cs
│ ├── TimeframeType.cs
│ └── TransformationType.cs
├── FinancialCharting.Library.csproj
├── Logging
│ ├── ILogWrapper.cs
│ ├── LogWrapper.cs
│ └── Targets
│ │ ├── TargetFile.cs
│ │ └── TargetWindowsEvents.cs
├── Models
│ ├── Common
│ │ ├── OperationResult.cs
│ │ └── PagingOptions.cs
│ ├── DataSet.cs
│ ├── DataSource.cs
│ ├── Indicator
│ │ ├── Indicator.cs
│ │ ├── IndicatorParametersFactory.cs
│ │ ├── IndicatorSeries.cs
│ │ └── IndicatorsParameters.cs
│ ├── MarketData
│ │ ├── Common
│ │ │ ├── DataFiveFields.cs
│ │ │ ├── DataFourFields.cs
│ │ │ ├── DataOneField.cs
│ │ │ ├── DataThreeFields.cs
│ │ │ ├── DataTwoFields.cs
│ │ │ ├── DateComponent.cs
│ │ │ ├── OhlcData.cs
│ │ │ ├── OhlcvData.cs
│ │ │ └── OhlcvOpenInterestData.cs
│ │ ├── Custom
│ │ │ ├── BudapestseData.cs
│ │ │ ├── SgxData.cs
│ │ │ └── YahooData.cs
│ │ ├── Interfaces
│ │ │ ├── IMarketData.cs
│ │ │ └── IOhlc.cs
│ │ └── NotImplemented
│ │ │ ├── AbmiData.cs
│ │ │ ├── AmmanseData.cs
│ │ │ ├── BarbData.cs
│ │ │ ├── BitcoinData.cs
│ │ │ ├── CboeData.cs
│ │ │ ├── IceData.cs
│ │ │ ├── MoneyTreeData.cs
│ │ │ ├── MxData.cs
│ │ │ ├── MyxData.cs
│ │ │ ├── NasdaqomxData.cs
│ │ │ ├── NikkeiData.cs
│ │ │ ├── NseData.cs
│ │ │ ├── NyxData.cs
│ │ │ ├── OdeData.cs
│ │ │ ├── OfdpData.cs
│ │ │ ├── OseData.cs
│ │ │ ├── PupData.cs
│ │ │ ├── ShfeData.cs
│ │ │ ├── SixData.cs
│ │ │ └── UisData.cs
│ ├── QuandlJsonModels
│ │ ├── Doc.cs
│ │ ├── RootObjectDataSet.cs
│ │ ├── RootObjectMarketData.cs
│ │ ├── Source.cs
│ │ └── Spellcheck.cs
│ └── Ticker.cs
├── ProjectExceptions
│ ├── IndicatorException.cs
│ ├── ParsingException.cs
│ ├── QuandlProviderException.cs
│ └── TALibException.cs
├── Properties
│ └── AssemblyInfo.cs
└── packages.config
├── FinancialCharting.QuandlProvider
├── FinancialCharting.QuandlProvider.csproj
├── Interfaces
│ ├── IQuandlDataProvider.cs
│ └── IQuandlMapper.cs
├── Properties
│ └── AssemblyInfo.cs
├── QuandlDataProvider.cs
├── QuandlMapper.cs
└── packages.config
├── FinancialCharting.Service
├── AppHost.cs
├── CachingManager.cs
├── FinancialCharting.Service.csproj
├── FinancialChartingService.cs
├── Global.asax
├── Global.asax.cs
├── Properties
│ └── AssemblyInfo.cs
├── Resolver
│ └── DependencyContainer.cs
├── Web.Debug.config
├── Web.Release.config
├── Web.config
├── packages.config
└── swagger-ui
│ ├── css
│ ├── hightlight.default.css
│ └── screen.css
│ ├── images
│ ├── logo_small.png
│ ├── pet_store_api.png
│ ├── throbber.gif
│ └── wordnik_api.png
│ ├── index.html
│ ├── lib
│ ├── backbone-min.js
│ ├── handlebars-1.0.rc.1.js
│ ├── highlight.7.3.pack.js
│ ├── jquery-1.8.0.min.js
│ ├── jquery.ba-bbq.min.js
│ ├── jquery.slideto.min.js
│ ├── jquery.wiggle.min.js
│ ├── swagger.js
│ └── underscore-min.js
│ ├── swagger-ui.js
│ └── swagger-ui.min.js
├── FinancialCharting.ServiceModels
├── BaseReponse.cs
├── CalculateTechnicalIndicator.cs
├── FinancialCharting.ServiceModels.csproj
├── GetFinancialDataSources.cs
├── GetMarketData.cs
├── GetSupportedIndicators.cs
├── GetTickers.cs
├── Properties
│ └── AssemblyInfo.cs
└── packages.config
├── FinancialCharting.TechnicalAnalysisLibrary
├── FinancialCharting.TechnicalAnalysisLibrary.csproj
├── Interfaces
│ └── ITALibProvider.cs
├── Properties
│ └── AssemblyInfo.cs
├── TALibProvider.cs
├── TechnicalIndicatorsManager.cs
└── packages.config
├── FinancialCharting.Tests
├── FinancialCharting.Tests.csproj
├── Properties
│ └── AssemblyInfo.cs
├── QuandlProvider
│ └── QuandlDataProviderTests.cs
├── WebService
│ └── FinancialChartingServiceTests.cs
└── packages.config
├── FinancialCharting.WebSite
├── FinancialCharting.WebSite.csproj
├── Index.html
├── Properties
│ └── AssemblyInfo.cs
├── Web.Debug.config
├── Web.Release.config
├── Web.config
├── adapter
│ ├── HighStock.js
│ ├── HighStockConfig.js
│ └── HighStockSerie.js
├── app.js
├── app
│ ├── controller
│ │ ├── ChartController.js
│ │ └── ChartOptionsController.js
│ ├── model
│ │ ├── DataSource.js
│ │ ├── MarketData.js
│ │ ├── Ticker.js
│ │ ├── TimeFrame.js
│ │ └── Transformation.js
│ ├── store
│ │ ├── DataSourceStore.js
│ │ ├── MarketDataStore.js
│ │ ├── SearchTickersStore.js
│ │ ├── TickerStore.js
│ │ ├── TimeFrameStore.js
│ │ └── TransformationStore.js
│ └── view
│ │ ├── ChartOptionsPanel.js
│ │ ├── DataSourceAccordion.js
│ │ ├── SearchGrid.js
│ │ ├── SideMenu.js
│ │ ├── TickersGrid.js
│ │ └── Viewport.js
├── common
│ ├── ErrorHandlingJsonP.js
│ └── ErrorHandlingReader.js
├── libs
│ ├── extjs
│ │ ├── bootstrap.js
│ │ ├── examples
│ │ │ └── shared
│ │ │ │ └── example.css
│ │ ├── ext-all-dev.js
│ │ ├── ext-all.js
│ │ ├── ext-theme-access.js
│ │ ├── ext-theme-classic-sandbox.js
│ │ ├── ext-theme-classic.js
│ │ ├── ext-theme-gray.js
│ │ ├── ext-theme-neptune.js
│ │ ├── ext.js
│ │ ├── resources
│ │ │ ├── css
│ │ │ │ ├── ext-all-access-debug.css
│ │ │ │ ├── ext-all-access-rtl-debug.css
│ │ │ │ ├── ext-all-access-rtl.css
│ │ │ │ ├── ext-all-access.css
│ │ │ │ ├── ext-all-debug.css
│ │ │ │ ├── ext-all-gray-debug.css
│ │ │ │ ├── ext-all-gray-rtl-debug.css
│ │ │ │ ├── ext-all-gray-rtl.css
│ │ │ │ ├── ext-all-gray.css
│ │ │ │ ├── ext-all-neptune-debug.css
│ │ │ │ ├── ext-all-neptune-rtl-debug.css
│ │ │ │ ├── ext-all-neptune-rtl.css
│ │ │ │ ├── ext-all-neptune.css
│ │ │ │ ├── ext-all-rtl-debug.css
│ │ │ │ ├── ext-all-rtl.css
│ │ │ │ ├── ext-all.css
│ │ │ │ ├── ext-sandbox-debug.css
│ │ │ │ └── ext-sandbox.css
│ │ │ └── ext-theme-classic
│ │ │ │ ├── Readme.md
│ │ │ │ ├── ext-theme-classic-all-debug.css
│ │ │ │ ├── ext-theme-classic-all-rtl-debug.css
│ │ │ │ ├── ext-theme-classic-all-rtl.css
│ │ │ │ ├── ext-theme-classic-all.css
│ │ │ │ └── images
│ │ │ │ ├── boundlist
│ │ │ │ └── trigger-arrow.png
│ │ │ │ ├── box
│ │ │ │ ├── corners-blue.gif
│ │ │ │ ├── corners.gif
│ │ │ │ ├── l-blue.gif
│ │ │ │ ├── l.gif
│ │ │ │ ├── r-blue.gif
│ │ │ │ ├── r.gif
│ │ │ │ ├── tb-blue.gif
│ │ │ │ └── tb.gif
│ │ │ │ ├── btn-group
│ │ │ │ ├── btn-group-default-framed-corners.gif
│ │ │ │ ├── btn-group-default-framed-notitle-corners.gif
│ │ │ │ ├── btn-group-default-framed-notitle-sides.gif
│ │ │ │ └── btn-group-default-framed-sides.gif
│ │ │ │ ├── btn
│ │ │ │ ├── btn-default-large-bg.gif
│ │ │ │ ├── btn-default-large-corners.gif
│ │ │ │ ├── btn-default-large-disabled-bg.gif
│ │ │ │ ├── btn-default-large-disabled-corners.gif
│ │ │ │ ├── btn-default-large-disabled-fbg.gif
│ │ │ │ ├── btn-default-large-disabled-sides.gif
│ │ │ │ ├── btn-default-large-fbg.gif
│ │ │ │ ├── btn-default-large-focus-bg.gif
│ │ │ │ ├── btn-default-large-focus-corners.gif
│ │ │ │ ├── btn-default-large-focus-fbg.gif
│ │ │ │ ├── btn-default-large-focus-sides.gif
│ │ │ │ ├── btn-default-large-over-bg.gif
│ │ │ │ ├── btn-default-large-over-corners.gif
│ │ │ │ ├── btn-default-large-over-fbg.gif
│ │ │ │ ├── btn-default-large-over-sides.gif
│ │ │ │ ├── btn-default-large-pressed-bg.gif
│ │ │ │ ├── btn-default-large-pressed-corners.gif
│ │ │ │ ├── btn-default-large-pressed-fbg.gif
│ │ │ │ ├── btn-default-large-pressed-sides.gif
│ │ │ │ ├── btn-default-large-sides.gif
│ │ │ │ ├── btn-default-medium-bg.gif
│ │ │ │ ├── btn-default-medium-corners.gif
│ │ │ │ ├── btn-default-medium-disabled-bg.gif
│ │ │ │ ├── btn-default-medium-disabled-corners.gif
│ │ │ │ ├── btn-default-medium-disabled-fbg.gif
│ │ │ │ ├── btn-default-medium-disabled-sides.gif
│ │ │ │ ├── btn-default-medium-fbg.gif
│ │ │ │ ├── btn-default-medium-focus-bg.gif
│ │ │ │ ├── btn-default-medium-focus-corners.gif
│ │ │ │ ├── btn-default-medium-focus-fbg.gif
│ │ │ │ ├── btn-default-medium-focus-sides.gif
│ │ │ │ ├── btn-default-medium-over-bg.gif
│ │ │ │ ├── btn-default-medium-over-corners.gif
│ │ │ │ ├── btn-default-medium-over-fbg.gif
│ │ │ │ ├── btn-default-medium-over-sides.gif
│ │ │ │ ├── btn-default-medium-pressed-bg.gif
│ │ │ │ ├── btn-default-medium-pressed-corners.gif
│ │ │ │ ├── btn-default-medium-pressed-fbg.gif
│ │ │ │ ├── btn-default-medium-pressed-sides.gif
│ │ │ │ ├── btn-default-medium-sides.gif
│ │ │ │ ├── btn-default-small-bg.gif
│ │ │ │ ├── btn-default-small-corners.gif
│ │ │ │ ├── btn-default-small-disabled-bg.gif
│ │ │ │ ├── btn-default-small-disabled-corners.gif
│ │ │ │ ├── btn-default-small-disabled-fbg.gif
│ │ │ │ ├── btn-default-small-disabled-sides.gif
│ │ │ │ ├── btn-default-small-fbg.gif
│ │ │ │ ├── btn-default-small-focus-bg.gif
│ │ │ │ ├── btn-default-small-focus-corners.gif
│ │ │ │ ├── btn-default-small-focus-fbg.gif
│ │ │ │ ├── btn-default-small-focus-sides.gif
│ │ │ │ ├── btn-default-small-over-bg.gif
│ │ │ │ ├── btn-default-small-over-corners.gif
│ │ │ │ ├── btn-default-small-over-fbg.gif
│ │ │ │ ├── btn-default-small-over-sides.gif
│ │ │ │ ├── btn-default-small-pressed-bg.gif
│ │ │ │ ├── btn-default-small-pressed-corners.gif
│ │ │ │ ├── btn-default-small-pressed-fbg.gif
│ │ │ │ ├── btn-default-small-pressed-sides.gif
│ │ │ │ ├── btn-default-small-sides.gif
│ │ │ │ ├── btn-default-toolbar-large-disabled-corners.gif
│ │ │ │ ├── btn-default-toolbar-large-disabled-sides.gif
│ │ │ │ ├── btn-default-toolbar-large-focus-bg.gif
│ │ │ │ ├── btn-default-toolbar-large-focus-corners.gif
│ │ │ │ ├── btn-default-toolbar-large-focus-fbg.gif
│ │ │ │ ├── btn-default-toolbar-large-focus-sides.gif
│ │ │ │ ├── btn-default-toolbar-large-over-bg.gif
│ │ │ │ ├── btn-default-toolbar-large-over-corners.gif
│ │ │ │ ├── btn-default-toolbar-large-over-fbg.gif
│ │ │ │ ├── btn-default-toolbar-large-over-sides.gif
│ │ │ │ ├── btn-default-toolbar-large-pressed-bg.gif
│ │ │ │ ├── btn-default-toolbar-large-pressed-corners.gif
│ │ │ │ ├── btn-default-toolbar-large-pressed-fbg.gif
│ │ │ │ ├── btn-default-toolbar-large-pressed-sides.gif
│ │ │ │ ├── btn-default-toolbar-medium-disabled-corners.gif
│ │ │ │ ├── btn-default-toolbar-medium-disabled-sides.gif
│ │ │ │ ├── btn-default-toolbar-medium-focus-bg.gif
│ │ │ │ ├── btn-default-toolbar-medium-focus-corners.gif
│ │ │ │ ├── btn-default-toolbar-medium-focus-fbg.gif
│ │ │ │ ├── btn-default-toolbar-medium-focus-sides.gif
│ │ │ │ ├── btn-default-toolbar-medium-over-bg.gif
│ │ │ │ ├── btn-default-toolbar-medium-over-corners.gif
│ │ │ │ ├── btn-default-toolbar-medium-over-fbg.gif
│ │ │ │ ├── btn-default-toolbar-medium-over-sides.gif
│ │ │ │ ├── btn-default-toolbar-medium-pressed-bg.gif
│ │ │ │ ├── btn-default-toolbar-medium-pressed-corners.gif
│ │ │ │ ├── btn-default-toolbar-medium-pressed-fbg.gif
│ │ │ │ ├── btn-default-toolbar-medium-pressed-sides.gif
│ │ │ │ ├── btn-default-toolbar-small-disabled-corners.gif
│ │ │ │ ├── btn-default-toolbar-small-disabled-sides.gif
│ │ │ │ ├── btn-default-toolbar-small-focus-bg.gif
│ │ │ │ ├── btn-default-toolbar-small-focus-corners.gif
│ │ │ │ ├── btn-default-toolbar-small-focus-fbg.gif
│ │ │ │ ├── btn-default-toolbar-small-focus-sides.gif
│ │ │ │ ├── btn-default-toolbar-small-over-bg.gif
│ │ │ │ ├── btn-default-toolbar-small-over-corners.gif
│ │ │ │ ├── btn-default-toolbar-small-over-fbg.gif
│ │ │ │ ├── btn-default-toolbar-small-over-sides.gif
│ │ │ │ ├── btn-default-toolbar-small-pressed-bg.gif
│ │ │ │ ├── btn-default-toolbar-small-pressed-corners.gif
│ │ │ │ ├── btn-default-toolbar-small-pressed-fbg.gif
│ │ │ │ └── btn-default-toolbar-small-pressed-sides.gif
│ │ │ │ ├── button
│ │ │ │ ├── arrow.gif
│ │ │ │ ├── btn.gif
│ │ │ │ ├── group-cs.gif
│ │ │ │ ├── group-lr.gif
│ │ │ │ ├── group-tb.gif
│ │ │ │ ├── s-arrow-b-noline.gif
│ │ │ │ ├── s-arrow-b.gif
│ │ │ │ ├── s-arrow-bo.gif
│ │ │ │ ├── s-arrow-light-rtl.gif
│ │ │ │ ├── s-arrow-light.gif
│ │ │ │ ├── s-arrow-noline-rtl.gif
│ │ │ │ ├── s-arrow-noline.gif
│ │ │ │ ├── s-arrow-o-rtl.gif
│ │ │ │ ├── s-arrow-o.gif
│ │ │ │ ├── s-arrow-rtl.gif
│ │ │ │ └── s-arrow.gif
│ │ │ │ ├── datepicker
│ │ │ │ ├── datepicker-footer-bg.gif
│ │ │ │ └── datepicker-header-bg.gif
│ │ │ │ ├── dd
│ │ │ │ ├── drop-add.gif
│ │ │ │ ├── drop-no.gif
│ │ │ │ └── drop-yes.gif
│ │ │ │ ├── editor
│ │ │ │ └── tb-sprite.gif
│ │ │ │ ├── form
│ │ │ │ ├── checkbox.gif
│ │ │ │ ├── clear-trigger-rtl.gif
│ │ │ │ ├── clear-trigger.gif
│ │ │ │ ├── date-trigger-rtl.gif
│ │ │ │ ├── date-trigger.gif
│ │ │ │ ├── error-tip-corners.gif
│ │ │ │ ├── exclamation.gif
│ │ │ │ ├── radio.gif
│ │ │ │ ├── search-trigger-rtl.gif
│ │ │ │ ├── search-trigger.gif
│ │ │ │ ├── spinner-rtl.gif
│ │ │ │ ├── spinner-small-rtl.gif
│ │ │ │ ├── spinner-small.gif
│ │ │ │ ├── spinner.gif
│ │ │ │ ├── text-bg.gif
│ │ │ │ ├── trigger-rtl.gif
│ │ │ │ ├── trigger-square-rtl.gif
│ │ │ │ ├── trigger-square.gif
│ │ │ │ ├── trigger-tpl-rtl.gif
│ │ │ │ ├── trigger-tpl.gif
│ │ │ │ └── trigger.gif
│ │ │ │ ├── grid-row-editor-buttons
│ │ │ │ ├── grid-row-editor-buttons-default-bottom-corners.gif
│ │ │ │ ├── grid-row-editor-buttons-default-bottom-sides.gif
│ │ │ │ ├── grid-row-editor-buttons-default-top-corners.gif
│ │ │ │ └── grid-row-editor-buttons-default-top-sides.gif
│ │ │ │ ├── grid
│ │ │ │ ├── arrow-left-white.gif
│ │ │ │ ├── arrow-right-white.gif
│ │ │ │ ├── cell-special-bg.gif
│ │ │ │ ├── cell-special-bg.png
│ │ │ │ ├── cell-special-selected-bg.gif
│ │ │ │ ├── cell-special-selected-bg.png
│ │ │ │ ├── col-move-bottom.gif
│ │ │ │ ├── col-move-top.gif
│ │ │ │ ├── column-header-bg.gif
│ │ │ │ ├── column-header-over-bg.gif
│ │ │ │ ├── columns.gif
│ │ │ │ ├── dd-insert-arrow-left.gif
│ │ │ │ ├── dd-insert-arrow-left.png
│ │ │ │ ├── dd-insert-arrow-right.gif
│ │ │ │ ├── dd-insert-arrow-right.png
│ │ │ │ ├── dirty-rtl.gif
│ │ │ │ ├── dirty.gif
│ │ │ │ ├── done.gif
│ │ │ │ ├── drop-no.gif
│ │ │ │ ├── drop-yes.gif
│ │ │ │ ├── footer-bg.gif
│ │ │ │ ├── grid-blue-hd.gif
│ │ │ │ ├── grid-blue-split.gif
│ │ │ │ ├── grid-hrow.gif
│ │ │ │ ├── grid-loading.gif
│ │ │ │ ├── grid-split.gif
│ │ │ │ ├── grid-vista-hd.gif
│ │ │ │ ├── grid3-hd-btn-left.gif
│ │ │ │ ├── grid3-hd-btn.gif
│ │ │ │ ├── grid3-hrow-over.gif
│ │ │ │ ├── grid3-hrow.gif
│ │ │ │ ├── grid3-rowheader.gif
│ │ │ │ ├── group-by.gif
│ │ │ │ ├── group-collapse.gif
│ │ │ │ ├── group-expand-sprite.gif
│ │ │ │ ├── group-expand.gif
│ │ │ │ ├── hd-pop.gif
│ │ │ │ ├── hmenu-asc.gif
│ │ │ │ ├── hmenu-desc.gif
│ │ │ │ ├── hmenu-lock.gif
│ │ │ │ ├── hmenu-lock.png
│ │ │ │ ├── hmenu-unlock.gif
│ │ │ │ ├── hmenu-unlock.png
│ │ │ │ ├── invalid_line.gif
│ │ │ │ ├── loading.gif
│ │ │ │ ├── mso-hd.gif
│ │ │ │ ├── nowait.gif
│ │ │ │ ├── page-first-disabled.gif
│ │ │ │ ├── page-first.gif
│ │ │ │ ├── page-last-disabled.gif
│ │ │ │ ├── page-last.gif
│ │ │ │ ├── page-next-disabled.gif
│ │ │ │ ├── page-next.gif
│ │ │ │ ├── page-prev-disabled.gif
│ │ │ │ ├── page-prev.gif
│ │ │ │ ├── pick-button.gif
│ │ │ │ ├── property-cell-bg.gif
│ │ │ │ ├── property-cell-selected-bg.gif
│ │ │ │ ├── refresh-disabled.gif
│ │ │ │ ├── refresh.gif
│ │ │ │ ├── row-check-sprite.gif
│ │ │ │ ├── row-expand-sprite.gif
│ │ │ │ ├── row-over.gif
│ │ │ │ ├── row-sel.gif
│ │ │ │ ├── sort-hd.gif
│ │ │ │ ├── sort_asc.gif
│ │ │ │ ├── sort_desc.gif
│ │ │ │ └── wait.gif
│ │ │ │ ├── layout
│ │ │ │ ├── mini-bottom.gif
│ │ │ │ ├── mini-left.gif
│ │ │ │ ├── mini-right.gif
│ │ │ │ └── mini-top.gif
│ │ │ │ ├── menu
│ │ │ │ ├── checked.gif
│ │ │ │ ├── group-checked.gif
│ │ │ │ ├── item-over.gif
│ │ │ │ ├── menu-item-active-bg.gif
│ │ │ │ ├── menu-parent-left.gif
│ │ │ │ ├── menu-parent.gif
│ │ │ │ ├── menu.gif
│ │ │ │ ├── scroll-bottom.gif
│ │ │ │ ├── scroll-top.gif
│ │ │ │ └── unchecked.gif
│ │ │ │ ├── panel-header
│ │ │ │ ├── panel-header-default-bottom-bg.gif
│ │ │ │ ├── panel-header-default-framed-bottom-bg.gif
│ │ │ │ ├── panel-header-default-framed-bottom-corners.gif
│ │ │ │ ├── panel-header-default-framed-bottom-fbg.gif
│ │ │ │ ├── panel-header-default-framed-bottom-sides.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-bottom-bg.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-bottom-corners.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-bottom-fbg.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-bottom-sides.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-left-bg-rtl.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-left-bg.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-left-corners-rtl.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-left-corners.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-left-fbg-rtl.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-left-fbg.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-left-sides-rtl.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-left-sides.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-right-bg-rtl.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-right-bg.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-right-corners-rtl.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-right-corners.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-right-fbg-rtl.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-right-fbg.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-right-sides-rtl.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-right-sides.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-top-bg.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-top-corners.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-top-fbg.gif
│ │ │ │ ├── panel-header-default-framed-collapsed-top-sides.gif
│ │ │ │ ├── panel-header-default-framed-left-bg-rtl.gif
│ │ │ │ ├── panel-header-default-framed-left-bg.gif
│ │ │ │ ├── panel-header-default-framed-left-corners-rtl.gif
│ │ │ │ ├── panel-header-default-framed-left-corners.gif
│ │ │ │ ├── panel-header-default-framed-left-fbg-rtl.gif
│ │ │ │ ├── panel-header-default-framed-left-fbg.gif
│ │ │ │ ├── panel-header-default-framed-left-sides-rtl.gif
│ │ │ │ ├── panel-header-default-framed-left-sides.gif
│ │ │ │ ├── panel-header-default-framed-right-bg-rtl.gif
│ │ │ │ ├── panel-header-default-framed-right-bg.gif
│ │ │ │ ├── panel-header-default-framed-right-corners-rtl.gif
│ │ │ │ ├── panel-header-default-framed-right-corners.gif
│ │ │ │ ├── panel-header-default-framed-right-fbg-rtl.gif
│ │ │ │ ├── panel-header-default-framed-right-fbg.gif
│ │ │ │ ├── panel-header-default-framed-right-sides-rtl.gif
│ │ │ │ ├── panel-header-default-framed-right-sides.gif
│ │ │ │ ├── panel-header-default-framed-top-bg.gif
│ │ │ │ ├── panel-header-default-framed-top-corners.gif
│ │ │ │ ├── panel-header-default-framed-top-fbg.gif
│ │ │ │ ├── panel-header-default-framed-top-sides.gif
│ │ │ │ ├── panel-header-default-left-bg-rtl.gif
│ │ │ │ ├── panel-header-default-left-bg.gif
│ │ │ │ ├── panel-header-default-right-bg-rtl.gif
│ │ │ │ ├── panel-header-default-right-bg.gif
│ │ │ │ └── panel-header-default-top-bg.gif
│ │ │ │ ├── panel
│ │ │ │ ├── panel-default-framed-corners.gif
│ │ │ │ └── panel-default-framed-sides.gif
│ │ │ │ ├── progress
│ │ │ │ └── progress-default-bg.gif
│ │ │ │ ├── shared
│ │ │ │ ├── blue-loading.gif
│ │ │ │ ├── calendar.gif
│ │ │ │ ├── glass-bg.gif
│ │ │ │ ├── hd-sprite.gif
│ │ │ │ ├── icon-error.gif
│ │ │ │ ├── icon-info.gif
│ │ │ │ ├── icon-question.gif
│ │ │ │ ├── icon-warning.gif
│ │ │ │ ├── large-loading.gif
│ │ │ │ ├── left-btn.gif
│ │ │ │ ├── loading-balls.gif
│ │ │ │ ├── right-btn.gif
│ │ │ │ ├── shadow-c.png
│ │ │ │ ├── shadow-lr.png
│ │ │ │ ├── shadow.png
│ │ │ │ └── warning.gif
│ │ │ │ ├── sizer
│ │ │ │ ├── e-handle-dark.gif
│ │ │ │ ├── e-handle.gif
│ │ │ │ ├── ne-handle-dark.gif
│ │ │ │ ├── ne-handle.gif
│ │ │ │ ├── nw-handle-dark.gif
│ │ │ │ ├── nw-handle.gif
│ │ │ │ ├── s-handle-dark.gif
│ │ │ │ ├── s-handle.gif
│ │ │ │ ├── se-handle-dark.gif
│ │ │ │ ├── se-handle.gif
│ │ │ │ ├── square.gif
│ │ │ │ ├── sw-handle-dark.gif
│ │ │ │ └── sw-handle.gif
│ │ │ │ ├── slider
│ │ │ │ ├── slider-bg.gif
│ │ │ │ ├── slider-bg.png
│ │ │ │ ├── slider-thumb.gif
│ │ │ │ ├── slider-thumb.png
│ │ │ │ ├── slider-v-bg.gif
│ │ │ │ ├── slider-v-bg.png
│ │ │ │ ├── slider-v-thumb.gif
│ │ │ │ └── slider-v-thumb.png
│ │ │ │ ├── tab-bar
│ │ │ │ ├── default-scroll-bottom-left.gif
│ │ │ │ ├── default-scroll-bottom-right.gif
│ │ │ │ ├── default-scroll-left-bottom.gif
│ │ │ │ ├── default-scroll-left-top.gif
│ │ │ │ ├── default-scroll-right-bottom.gif
│ │ │ │ ├── default-scroll-right-top.gif
│ │ │ │ ├── default-scroll-top-left.gif
│ │ │ │ ├── default-scroll-top-right.gif
│ │ │ │ ├── tab-bar-default-bottom-bg.gif
│ │ │ │ ├── tab-bar-default-left-bg.gif
│ │ │ │ ├── tab-bar-default-right-bg.gif
│ │ │ │ └── tab-bar-default-top-bg.gif
│ │ │ │ ├── tab
│ │ │ │ ├── tab-default-bottom-active-bg.gif
│ │ │ │ ├── tab-default-bottom-active-corners.gif
│ │ │ │ ├── tab-default-bottom-active-fbg.gif
│ │ │ │ ├── tab-default-bottom-active-sides.gif
│ │ │ │ ├── tab-default-bottom-bg.gif
│ │ │ │ ├── tab-default-bottom-corners.gif
│ │ │ │ ├── tab-default-bottom-disabled-bg.gif
│ │ │ │ ├── tab-default-bottom-disabled-corners.gif
│ │ │ │ ├── tab-default-bottom-disabled-fbg.gif
│ │ │ │ ├── tab-default-bottom-disabled-sides.gif
│ │ │ │ ├── tab-default-bottom-fbg.gif
│ │ │ │ ├── tab-default-bottom-over-bg.gif
│ │ │ │ ├── tab-default-bottom-over-corners.gif
│ │ │ │ ├── tab-default-bottom-over-fbg.gif
│ │ │ │ ├── tab-default-bottom-over-sides.gif
│ │ │ │ ├── tab-default-bottom-sides.gif
│ │ │ │ ├── tab-default-close.gif
│ │ │ │ ├── tab-default-top-active-bg.gif
│ │ │ │ ├── tab-default-top-active-corners.gif
│ │ │ │ ├── tab-default-top-active-fbg.gif
│ │ │ │ ├── tab-default-top-active-sides.gif
│ │ │ │ ├── tab-default-top-bg.gif
│ │ │ │ ├── tab-default-top-corners.gif
│ │ │ │ ├── tab-default-top-disabled-bg.gif
│ │ │ │ ├── tab-default-top-disabled-corners.gif
│ │ │ │ ├── tab-default-top-disabled-fbg.gif
│ │ │ │ ├── tab-default-top-disabled-sides.gif
│ │ │ │ ├── tab-default-top-fbg.gif
│ │ │ │ ├── tab-default-top-over-bg.gif
│ │ │ │ ├── tab-default-top-over-corners.gif
│ │ │ │ ├── tab-default-top-over-fbg.gif
│ │ │ │ ├── tab-default-top-over-sides.gif
│ │ │ │ └── tab-default-top-sides.gif
│ │ │ │ ├── tip
│ │ │ │ ├── tip-default-corners.gif
│ │ │ │ ├── tip-default-sides.gif
│ │ │ │ ├── tip-form-invalid-corners.gif
│ │ │ │ └── tip-form-invalid-sides.gif
│ │ │ │ ├── toolbar
│ │ │ │ ├── more-left.gif
│ │ │ │ ├── more.gif
│ │ │ │ ├── scroll-left.gif
│ │ │ │ ├── scroll-right.gif
│ │ │ │ └── toolbar-default-bg.gif
│ │ │ │ ├── tools
│ │ │ │ ├── tool-sprite-tpl.gif
│ │ │ │ ├── tool-sprites.gif
│ │ │ │ └── tools-sprites-trans.gif
│ │ │ │ ├── tree
│ │ │ │ ├── arrows-rtl.gif
│ │ │ │ ├── arrows.gif
│ │ │ │ ├── drop-above.gif
│ │ │ │ ├── drop-add.gif
│ │ │ │ ├── drop-append.gif
│ │ │ │ ├── drop-below.gif
│ │ │ │ ├── drop-between.gif
│ │ │ │ ├── drop-no.gif
│ │ │ │ ├── drop-over.gif
│ │ │ │ ├── drop-under.gif
│ │ │ │ ├── drop-yes.gif
│ │ │ │ ├── elbow-end-minus-rtl.gif
│ │ │ │ ├── elbow-end-minus.gif
│ │ │ │ ├── elbow-end-plus-rtl.gif
│ │ │ │ ├── elbow-end-plus.gif
│ │ │ │ ├── elbow-end-rtl.gif
│ │ │ │ ├── elbow-end.gif
│ │ │ │ ├── elbow-line-rtl.gif
│ │ │ │ ├── elbow-line.gif
│ │ │ │ ├── elbow-minus-nl-rtl.gif
│ │ │ │ ├── elbow-minus-nl.gif
│ │ │ │ ├── elbow-minus-rtl.gif
│ │ │ │ ├── elbow-minus.gif
│ │ │ │ ├── elbow-plus-nl-rtl.gif
│ │ │ │ ├── elbow-plus-nl.gif
│ │ │ │ ├── elbow-plus-rtl.gif
│ │ │ │ ├── elbow-plus.gif
│ │ │ │ ├── elbow-rtl.gif
│ │ │ │ ├── elbow.gif
│ │ │ │ ├── folder-open-rtl.gif
│ │ │ │ ├── folder-open.gif
│ │ │ │ ├── folder-rtl.gif
│ │ │ │ ├── folder.gif
│ │ │ │ ├── leaf-rtl.gif
│ │ │ │ ├── leaf.gif
│ │ │ │ ├── loading.gif
│ │ │ │ └── s.gif
│ │ │ │ ├── util
│ │ │ │ └── splitter
│ │ │ │ │ ├── mini-bottom.gif
│ │ │ │ │ ├── mini-left.gif
│ │ │ │ │ ├── mini-right.gif
│ │ │ │ │ └── mini-top.gif
│ │ │ │ ├── window-header
│ │ │ │ ├── window-header-default-bottom-corners.gif
│ │ │ │ ├── window-header-default-bottom-sides.gif
│ │ │ │ ├── window-header-default-collapsed-bottom-corners.gif
│ │ │ │ ├── window-header-default-collapsed-bottom-sides.gif
│ │ │ │ ├── window-header-default-collapsed-left-corners-rtl.gif
│ │ │ │ ├── window-header-default-collapsed-left-corners.gif
│ │ │ │ ├── window-header-default-collapsed-left-sides.gif
│ │ │ │ ├── window-header-default-collapsed-right-corners-rtl.gif
│ │ │ │ ├── window-header-default-collapsed-right-corners.gif
│ │ │ │ ├── window-header-default-collapsed-right-sides.gif
│ │ │ │ ├── window-header-default-collapsed-top-corners.gif
│ │ │ │ ├── window-header-default-collapsed-top-sides.gif
│ │ │ │ ├── window-header-default-left-corners-rtl.gif
│ │ │ │ ├── window-header-default-left-corners.gif
│ │ │ │ ├── window-header-default-left-sides.gif
│ │ │ │ ├── window-header-default-right-corners-rtl.gif
│ │ │ │ ├── window-header-default-right-corners.gif
│ │ │ │ ├── window-header-default-right-sides.gif
│ │ │ │ ├── window-header-default-top-corners.gif
│ │ │ │ └── window-header-default-top-sides.gif
│ │ │ │ └── window
│ │ │ │ ├── window-default-corners.gif
│ │ │ │ └── window-default-sides.gif
│ │ └── ux
│ │ │ └── statusbar
│ │ │ ├── StatusBar.js
│ │ │ ├── ValidationStatus.js
│ │ │ ├── css
│ │ │ └── statusbar.css
│ │ │ └── images
│ │ │ ├── accept.png
│ │ │ ├── exclamation.gif
│ │ │ ├── loading.gif
│ │ │ ├── saved.png
│ │ │ └── saving.gif
│ ├── hs
│ │ ├── adapters
│ │ │ ├── standalone-framework.js
│ │ │ └── standalone-framework.src.js
│ │ ├── highcharts-3d.js
│ │ ├── highcharts-3d.src.js
│ │ ├── highcharts-more.js
│ │ ├── highcharts-more.src.js
│ │ ├── highstock.js
│ │ ├── highstock.src.js
│ │ ├── modules
│ │ │ ├── canvas-tools.js
│ │ │ ├── canvas-tools.src.js
│ │ │ ├── data.js
│ │ │ ├── data.src.js
│ │ │ ├── drilldown.js
│ │ │ ├── drilldown.src.js
│ │ │ ├── exporting.js
│ │ │ ├── exporting.src.js
│ │ │ ├── funnel.js
│ │ │ ├── funnel.src.js
│ │ │ ├── heatmap.js
│ │ │ ├── heatmap.src.js
│ │ │ ├── no-data-to-display.js
│ │ │ ├── no-data-to-display.src.js
│ │ │ ├── solid-gauge.js
│ │ │ └── solid-gauge.src.js
│ │ └── themes
│ │ │ ├── dark-blue.js
│ │ │ ├── dark-green.js
│ │ │ ├── dark-unica.js
│ │ │ ├── gray.js
│ │ │ ├── grid-light.js
│ │ │ ├── grid.js
│ │ │ ├── sand-signika.js
│ │ │ └── skies.js
│ └── jquery
│ │ └── jquery-2.1.1.js
└── override
│ ├── Connection.js
│ ├── JsonP.js
│ └── Server.js
└── FinancialCharting.sln
/README.md:
--------------------------------------------------------------------------------
1 | FinancialCharting
2 | =================
3 |
4 | Stock charts. Application uses ExtJS, HighStock, ServiceStack and Quandl.com (datafeed).
5 |
6 | http://quandlcharting-ui.azurewebsites.net/
7 |
8 | http://quandlcharting.azurewebsites.net/metadata
9 |
10 | http://quandlcharting.azurewebsites.net/swagger-ui/index.html
--------------------------------------------------------------------------------
/src/.nuget/NuGet.Config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/.nuget/NuGet.exe:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AnCh7/FinancialCharting/fda6fbdc75f59a604ae13b11c6bc29e0c9871bd6/src/.nuget/NuGet.exe
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Enum/IndicatorType.cs:
--------------------------------------------------------------------------------
1 | namespace FinancialCharting.Library.Enum
2 | {
3 | public enum IndicatorType
4 | {
5 | NONE,
6 | BBANDS,
7 | RSI,
8 | SMA,
9 | EMA,
10 | WMA,
11 | STOCH,
12 | AROON,
13 | AROONOSC,
14 | ADX,
15 | MACD
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Enum/SortOrderType.cs:
--------------------------------------------------------------------------------
1 | namespace FinancialCharting.Library.Enum
2 | {
3 | public enum SortOrderType
4 | {
5 | ASC,
6 | DESC
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Enum/TimeframeType.cs:
--------------------------------------------------------------------------------
1 | namespace FinancialCharting.Library.Enum
2 | {
3 | public enum TimeframeType
4 | {
5 | NONE,
6 | DAILY,
7 | WEEKLY,
8 | MONTHLY,
9 | QUARTERLY,
10 | ANNUAL
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Enum/TransformationType.cs:
--------------------------------------------------------------------------------
1 | namespace FinancialCharting.Library.Enum
2 | {
3 | public enum TransformationType
4 | {
5 | NONE,
6 | DIFF,
7 | RDIFF,
8 | CUMUL,
9 | NORMALIZE
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Logging/ILogWrapper.cs:
--------------------------------------------------------------------------------
1 | #region Usings
2 |
3 | using System;
4 |
5 | #endregion
6 |
7 | namespace FinancialCharting.Library.Logging
8 | {
9 | public interface ILogWrapper
10 | {
11 | void Error(string message);
12 |
13 | void Error(Exception exception);
14 |
15 | void Warn(string message);
16 |
17 | void Warn(Exception exception);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Models/Common/PagingOptions.cs:
--------------------------------------------------------------------------------
1 | namespace FinancialCharting.Library.Models.Common
2 | {
3 | public class PagingOptions
4 | {
5 | public PagingOptions(int perPage, int pageNumber)
6 | {
7 | PerPage = perPage;
8 | PageNumber = pageNumber;
9 | }
10 |
11 | public int PerPage { get; private set; }
12 |
13 | public int PageNumber { get; private set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Models/MarketData/Interfaces/IMarketData.cs:
--------------------------------------------------------------------------------
1 | #region Usings
2 |
3 | using System;
4 |
5 | #endregion
6 |
7 | namespace FinancialCharting.Library.Models.MarketData.Interfaces
8 | {
9 | public interface IMarketData
10 | {
11 | DateTime Datetime { get; set; }
12 |
13 | long UnixTimeMs { get; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Models/MarketData/Interfaces/IOhlc.cs:
--------------------------------------------------------------------------------
1 | namespace FinancialCharting.Library.Models.MarketData.Interfaces
2 | {
3 | public interface IOhlc : IMarketData
4 | {
5 | double Open { get; set; }
6 |
7 | double High { get; set; }
8 |
9 | double Low { get; set; }
10 |
11 | double Close { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Models/MarketData/NotImplemented/MyxData.cs:
--------------------------------------------------------------------------------
1 | #region Usings
2 |
3 | using System.Runtime.Serialization;
4 |
5 | #endregion
6 |
7 | namespace FinancialCharting.Library.Models.MarketData.NotImplemented
8 | {
9 | /// MYX ["Date","Volume","Open Interest","Open","High","Low","Settle"]
10 | [DataContract]
11 | public class MyxData
12 | {}
13 | }
14 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Models/MarketData/NotImplemented/OfdpData.cs:
--------------------------------------------------------------------------------
1 | #region Usings
2 |
3 | using System.Runtime.Serialization;
4 |
5 | #endregion
6 |
7 | namespace FinancialCharting.Library.Models.MarketData.NotImplemented
8 | {
9 | /// OFDP ["Date","Open","High","Low","Settle","Volume","Open Interest"]
10 | [DataContract]
11 | public class OfdpData
12 | {}
13 | }
14 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Models/MarketData/NotImplemented/PupData.cs:
--------------------------------------------------------------------------------
1 | #region Usings
2 |
3 | using System.Runtime.Serialization;
4 |
5 | #endregion
6 |
7 | namespace FinancialCharting.Library.Models.MarketData.NotImplemented
8 | {
9 | /// PUP ["Date","CPI Disagreement Index","Budget Balance Disagreement Index","News-Based EPU Index"]
10 | [DataContract]
11 | public class PupData
12 | {}
13 | }
14 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Models/MarketData/NotImplemented/SixData.cs:
--------------------------------------------------------------------------------
1 | #region Usings
2 |
3 | using System.Runtime.Serialization;
4 |
5 | #endregion
6 |
7 | namespace FinancialCharting.Library.Models.MarketData.NotImplemented
8 | {
9 | /// SIX ["Date","Price","Volume"]
10 | [DataContract]
11 | public class SixData
12 | {}
13 | }
14 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Models/MarketData/NotImplemented/UisData.cs:
--------------------------------------------------------------------------------
1 | #region Usings
2 |
3 | using System.Runtime.Serialization;
4 |
5 | #endregion
6 |
7 | namespace FinancialCharting.Library.Models.MarketData.NotImplemented
8 | {
9 | /// UIS ["Date","1","2","3","4","5","6","7","8","9","10"]
10 | [DataContract]
11 | public class UisData
12 | {}
13 | }
14 |
--------------------------------------------------------------------------------
/src/FinancialCharting.Library/Models/QuandlJsonModels/Spellcheck.cs:
--------------------------------------------------------------------------------
1 | #region Usings
2 |
3 | using System.Collections.Generic;
4 |
5 | #endregion
6 |
7 | namespace FinancialCharting.Library.Models.QuandlJsonModels
8 | {
9 | public class Spellcheck
10 | {
11 | public List