Changeset 10020
- Timestamp:
- 10/02/13 17:04:43 (11 years ago)
- Location:
- stable
- Files:
-
- 3 deleted
- 32 edited
- 3 copied
Legend:
- Unmodified
- Added
- Removed
-
stable
- Property svn:mergeinfo changed
-
stable/HeuristicLab 3.3.sln
r9856 r10020 28 28 {B7FA451C-26BF-4EE5-8E0E-BECAADA5B8E9} = {B7FA451C-26BF-4EE5-8E0E-BECAADA5B8E9} 29 29 {E226881D-315F-423D-B419-A766FE0D8685} = {E226881D-315F-423D-B419-A766FE0D8685} 30 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F} = {CB3D0A1E-1BE8-476B-A53C-2B189E30064F} 30 31 {D34A7620-3E23-40D9-8647-637BE901F271} = {D34A7620-3E23-40D9-8647-637BE901F271} 31 32 {F62BCD22-FB83-4444-9401-8031C2487A86} = {F62BCD22-FB83-4444-9401-8031C2487A86} … … 130 131 {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937} = {BBAB9DF5-5EF3-4BA8-ADE9-B36E82114937} 131 132 {6AE0E1F5-D3FF-43A3-90E1-2435E7493FB5} = {6AE0E1F5-D3FF-43A3-90E1-2435E7493FB5} 133 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32} = {E4EE5AFB-D552-447B-8A16-6CBE7938AF32} 132 134 EndProjectSection 133 135 EndProject … … 372 374 EndProject 373 375 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Algorithms.CMAEvolutionStrategy-3.3", "HeuristicLab.Algorithms.CMAEvolutionStrategy\3.3\HeuristicLab.Algorithms.CMAEvolutionStrategy-3.3.csproj", "{5E516C4F-9935-437F-8B15-ECEF4451744E}" 376 EndProject 377 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.DataAnalysis.Trading-3.4", "HeuristicLab.Problems.DataAnalysis.Trading\3.4\HeuristicLab.Problems.DataAnalysis.Trading-3.4.csproj", "{E4EE5AFB-D552-447B-8A16-6CBE7938AF32}" 378 EndProject 379 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Problems.DataAnalysis.Trading.Views-3.4", "HeuristicLab.Problems.DataAnalysis.Trading.Views\3.4\HeuristicLab.Problems.DataAnalysis.Trading.Views-3.4.csproj", "{CB3D0A1E-1BE8-476B-A53C-2B189E30064F}" 374 380 EndProject 375 381 Global … … 1811 1817 {5E516C4F-9935-437F-8B15-ECEF4451744E}.Release|x86.ActiveCfg = Release|x86 1812 1818 {5E516C4F-9935-437F-8B15-ECEF4451744E}.Release|x86.Build.0 = Release|x86 1819 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 1820 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Debug|Any CPU.Build.0 = Debug|Any CPU 1821 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Debug|x64.ActiveCfg = Debug|x64 1822 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Debug|x64.Build.0 = Debug|x64 1823 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Debug|x86.ActiveCfg = Debug|x86 1824 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Debug|x86.Build.0 = Debug|x86 1825 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Release|Any CPU.ActiveCfg = Release|Any CPU 1826 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Release|Any CPU.Build.0 = Release|Any CPU 1827 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Release|x64.ActiveCfg = Release|x64 1828 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Release|x64.Build.0 = Release|x64 1829 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Release|x86.ActiveCfg = Release|x86 1830 {E4EE5AFB-D552-447B-8A16-6CBE7938AF32}.Release|x86.Build.0 = Release|x86 1831 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 1832 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Debug|Any CPU.Build.0 = Debug|Any CPU 1833 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Debug|x64.ActiveCfg = Debug|x64 1834 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Debug|x64.Build.0 = Debug|x64 1835 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Debug|x86.ActiveCfg = Debug|x86 1836 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Debug|x86.Build.0 = Debug|x86 1837 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Release|Any CPU.ActiveCfg = Release|Any CPU 1838 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Release|Any CPU.Build.0 = Release|Any CPU 1839 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Release|x64.ActiveCfg = Release|x64 1840 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Release|x64.Build.0 = Release|x64 1841 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Release|x86.ActiveCfg = Release|x86 1842 {CB3D0A1E-1BE8-476B-A53C-2B189E30064F}.Release|x86.Build.0 = Release|x86 1813 1843 EndGlobalSection 1814 1844 GlobalSection(SolutionProperties) = preSolution -
stable/HeuristicLab.Problems.DataAnalysis.Symbolic
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic merged: 9992
- Property svn:mergeinfo changed
-
stable/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Grammars/TypeCoherentExpressionGrammar.cs
r9459 r10020 251 251 Symbols.First(s => s.Name == SpecialFunctionsName).Enabled = false; 252 252 253 253 Symbols.Single(s => s.Name == "Variable").Enabled = false; 254 254 Symbols.First(s => s.Name == TimeSeriesSymbolsName).Enabled = true; 255 255 Symbols.First(s => s is Derivative).Enabled = false; -
stable/HeuristicLab.Problems.DataAnalysis.Trading.Views/3.4/HeuristicLab.Problems.DataAnalysis.Trading.Views-3.4.csproj
r9799 r10020 41 41 <DebugType>full</DebugType> 42 42 <Optimize>false</Optimize> 43 <OutputPath>..\..\ ..\..\trunk\sources\bin\</OutputPath>43 <OutputPath>..\..\bin\</OutputPath> 44 44 <DefineConstants>DEBUG;TRACE</DefineConstants> 45 45 <ErrorReport>prompt</ErrorReport> … … 50 50 <DebugType>pdbonly</DebugType> 51 51 <Optimize>true</Optimize> 52 <OutputPath> bin\Release\</OutputPath>52 <OutputPath>..\..\bin\</OutputPath> 53 53 <DefineConstants>TRACE</DefineConstants> 54 54 <ErrorReport>prompt</ErrorReport> … … 58 58 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' "> 59 59 <DebugSymbols>true</DebugSymbols> 60 <OutputPath>..\..\ ..\..\trunk\sources\bin\</OutputPath>60 <OutputPath>..\..\bin\</OutputPath> 61 61 <DefineConstants>DEBUG;TRACE</DefineConstants> 62 62 <DebugType>full</DebugType> … … 66 66 </PropertyGroup> 67 67 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' "> 68 <OutputPath> bin\x64\Release\</OutputPath>68 <OutputPath>..\..\bin\</OutputPath> 69 69 <DefineConstants>TRACE</DefineConstants> 70 70 <Optimize>true</Optimize> … … 76 76 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> 77 77 <DebugSymbols>true</DebugSymbols> 78 <OutputPath>..\..\ ..\..\trunk\sources\bin\</OutputPath>78 <OutputPath>..\..\bin\</OutputPath> 79 79 <DefineConstants>DEBUG;TRACE</DefineConstants> 80 80 <DebugType>full</DebugType> … … 84 84 </PropertyGroup> 85 85 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> 86 <OutputPath> bin\x86\Release\</OutputPath>86 <OutputPath>..\..\bin\</OutputPath> 87 87 <DefineConstants>TRACE</DefineConstants> 88 88 <Optimize>true</Optimize> … … 93 93 </PropertyGroup> 94 94 <ItemGroup> 95 <Reference Include="HeuristicLab.Collections-3.3">96 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Collections-3.3.dll</HintPath>97 </Reference>98 <Reference Include="HeuristicLab.Common-3.3">99 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Common-3.3.dll</HintPath>100 </Reference>101 <Reference Include="HeuristicLab.Common.Resources-3.3">102 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Common.Resources-3.3.dll</HintPath>103 </Reference>104 <Reference Include="HeuristicLab.Core-3.3">105 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Core-3.3.dll</HintPath>106 </Reference>107 <Reference Include="HeuristicLab.Core.Views-3.3">108 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Core.Views-3.3.dll</HintPath>109 </Reference>110 <Reference Include="HeuristicLab.Data-3.3">111 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Data-3.3.dll</HintPath>112 </Reference>113 <Reference Include="HeuristicLab.MainForm-3.3">114 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.MainForm-3.3.dll</HintPath>115 </Reference>116 <Reference Include="HeuristicLab.MainForm.WindowsForms-3.3">117 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.MainForm.WindowsForms-3.3.dll</HintPath>118 </Reference>119 <Reference Include="HeuristicLab.Optimization-3.3">120 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Optimization-3.3.dll</HintPath>121 </Reference>122 <Reference Include="HeuristicLab.PluginInfrastructure-3.3">123 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath>124 </Reference>125 <Reference Include="HeuristicLab.Problems.DataAnalysis-3.4">126 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis-3.4.dll</HintPath>127 </Reference>128 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic-3.4">129 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.dll</HintPath>130 </Reference>131 <Reference Include="HeuristicLab.Problems.DataAnalysis.Views-3.4">132 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Views-3.4.dll</HintPath>133 </Reference>134 <Reference Include="HeuristicLab.Visualization.ChartControlsExtensions-3.3">135 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Visualization.ChartControlsExtensions-3.3.dll</HintPath>136 </Reference>137 95 <Reference Include="System" /> 138 96 <Reference Include="System.Core"> … … 156 114 </Compile> 157 115 <Compile Include="SolutionView.Designer.cs"> 158 <DependentUpon>SolutionView.cs</DependentUpon>159 </Compile>160 <Compile Include="Symbolic\SolutionView.cs">161 <SubType>UserControl</SubType>162 </Compile>163 <Compile Include="Symbolic\SolutionView.Designer.cs">164 116 <DependentUpon>SolutionView.cs</DependentUpon> 165 117 </Compile> … … 186 138 </BootstrapperPackage> 187 139 </ItemGroup> 188 <ItemGroup> 189 <Folder Include="Symbolic\Interfaces\" /> 190 <Folder Include="Symbolic\SingleObjective\" /> 191 <Folder Include="Symbolic\Views\" /> 192 </ItemGroup> 193 <ItemGroup> 140 <ItemGroup /> 141 <ItemGroup> 142 <ProjectReference Include="..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj"> 143 <Project>{958B43BC-CC5C-4FA2-8628-2B3B01D890B6}</Project> 144 <Name>HeuristicLab.Collections-3.3</Name> 145 <Private>False</Private> 146 </ProjectReference> 147 <ProjectReference Include="..\..\HeuristicLab.Common.Resources\3.3\HeuristicLab.Common.Resources-3.3.csproj"> 148 <Project>{0e27a536-1c4a-4624-a65e-dc4f4f23e3e1}</Project> 149 <Name>HeuristicLab.Common.Resources-3.3</Name> 150 <Private>False</Private> 151 </ProjectReference> 152 <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj"> 153 <Project>{A9AD58B9-3EF9-4CC1-97E5-8D909039FF5C}</Project> 154 <Name>HeuristicLab.Common-3.3</Name> 155 <Private>False</Private> 156 </ProjectReference> 157 <ProjectReference Include="..\..\HeuristicLab.Core.Views\3.3\HeuristicLab.Core.Views-3.3.csproj"> 158 <Project>{e226881d-315f-423d-b419-a766fe0d8685}</Project> 159 <Name>HeuristicLab.Core.Views-3.3</Name> 160 <Private>False</Private> 161 </ProjectReference> 162 <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj"> 163 <Project>{C36BD924-A541-4A00-AFA8-41701378DDC5}</Project> 164 <Name>HeuristicLab.Core-3.3</Name> 165 <Private>False</Private> 166 </ProjectReference> 167 <ProjectReference Include="..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj"> 168 <Project>{bbab9df5-5ef3-4ba8-ade9-b36e82114937}</Project> 169 <Name>HeuristicLab.Data-3.3</Name> 170 <Private>False</Private> 171 </ProjectReference> 172 <ProjectReference Include="..\..\HeuristicLab.MainForm.WindowsForms\3.3\HeuristicLab.MainForm.WindowsForms-3.3.csproj"> 173 <Project>{ab687bbe-1bfe-476b-906d-44237135431d}</Project> 174 <Name>HeuristicLab.MainForm.WindowsForms-3.3</Name> 175 <Private>False</Private> 176 </ProjectReference> 177 <ProjectReference Include="..\..\HeuristicLab.MainForm\3.3\HeuristicLab.MainForm-3.3.csproj"> 178 <Project>{3bd61258-31da-4b09-89c0-4f71fef5f05a}</Project> 179 <Name>HeuristicLab.MainForm-3.3</Name> 180 <Private>False</Private> 181 </ProjectReference> 182 <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj"> 183 <Project>{14ab8d24-25bc-400c-a846-4627aa945192}</Project> 184 <Name>HeuristicLab.Optimization-3.3</Name> 185 <Private>False</Private> 186 </ProjectReference> 187 <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj"> 188 <Project>{94186a6a-5176-4402-ae83-886557b53cca}</Project> 189 <Name>HeuristicLab.PluginInfrastructure-3.3</Name> 190 <Private>False</Private> 191 </ProjectReference> 192 <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj"> 193 <Project>{3D28463F-EC96-4D82-AFEE-38BE91A0CA00}</Project> 194 <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name> 195 <Private>False</Private> 196 </ProjectReference> 194 197 <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Trading\3.4\HeuristicLab.Problems.DataAnalysis.Trading-3.4.csproj"> 195 <Project>{ E4EE5AFB-D552-447B-8A16-6CBE7938AF32}</Project>198 <Project>{e4ee5afb-d552-447b-8a16-6cbe7938af32}</Project> 196 199 <Name>HeuristicLab.Problems.DataAnalysis.Trading-3.4</Name> 200 <Private>False</Private> 201 </ProjectReference> 202 <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Views\3.4\HeuristicLab.Problems.DataAnalysis.Views-3.4.csproj"> 203 <Project>{3e9e8944-44ff-40bb-a622-3a4a7dd0f198}</Project> 204 <Name>HeuristicLab.Problems.DataAnalysis.Views-3.4</Name> 205 <Private>False</Private> 206 </ProjectReference> 207 <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis\3.4\HeuristicLab.Problems.DataAnalysis-3.4.csproj"> 208 <Project>{df87c13e-a889-46ff-8153-66dcaa8c5674}</Project> 209 <Name>HeuristicLab.Problems.DataAnalysis-3.4</Name> 210 <Private>False</Private> 211 </ProjectReference> 212 <ProjectReference Include="..\..\HeuristicLab.Visualization.ChartControlsExtensions\3.3\HeuristicLab.Visualization.ChartControlsExtensions-3.3.csproj"> 213 <Project>{315bda09-3f4f-49b3-9790-b37cfc1c5750}</Project> 214 <Name>HeuristicLab.Visualization.ChartControlsExtensions-3.3</Name> 215 <Private>False</Private> 197 216 </ProjectReference> 198 217 </ItemGroup> … … 206 225 --> 207 226 <PropertyGroup> 208 <PreBuildEvent>set Path=%25Path%25;$(ProjectDir);$(SolutionDir) 209 set ProjectDir=$(ProjectDir) 210 set SolutionDir=$(SolutionDir) 211 set Outdir=$(Outdir) 227 <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' "> 228 set Path=%25Path%25;$(ProjectDir);$(SolutionDir) 229 set ProjectDir=$(ProjectDir) 230 set SolutionDir=$(SolutionDir) 231 set Outdir=$(Outdir) 212 232 213 call PreBuildEvent.cmd 214 </PreBuildEvent> 233 call PreBuildEvent.cmd 234 </PreBuildEvent> 235 <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' "> 236 export ProjectDir=$(ProjectDir) 237 export SolutionDir=$(SolutionDir) 238 239 $SolutionDir/PreBuildEvent.sh 240 </PreBuildEvent> 215 241 </PropertyGroup> 216 242 </Project> -
stable/HeuristicLab.Problems.DataAnalysis.Trading.Views/3.4/Plugin.cs.frame
r9799 r10020 26 26 [PluginFile("HeuristicLab.Problems.DataAnalysis.Trading.Views-3.4.dll", PluginFileType.Assembly)] 27 27 28 [PluginDependency("HeuristicLab.Collections", "3.3")]29 [PluginDependency("HeuristicLab.Common", "3.3")]30 28 [PluginDependency("HeuristicLab.Common.Resources", "3.3")] 31 [PluginDependency("HeuristicLab.Core", "3.3")]32 29 [PluginDependency("HeuristicLab.Core.Views", "3.3")] 33 30 [PluginDependency("HeuristicLab.Data", "3.3")] 34 [PluginDependency("HeuristicLab.Data.Views", "3.3")]35 [PluginDependency("HeuristicLab.Encodings.SymbolicExpressionTreeEncoding", "3.4")]36 31 [PluginDependency("HeuristicLab.MainForm", "3.3")] 37 32 [PluginDependency("HeuristicLab.MainForm.WindowsForms", "3.3")] 38 [PluginDependency("HeuristicLab.Operators", "3.3")]39 33 [PluginDependency("HeuristicLab.Optimization", "3.3")] 40 [PluginDependency("HeuristicLab.Parameters", "3.3")]41 [PluginDependency("HeuristicLab.Persistence", "3.3")]42 34 [PluginDependency("HeuristicLab.Problems.DataAnalysis", "3.4")] 43 [PluginDependency("HeuristicLab.Problems.DataAnalysis.Symbolic", "3.4")]44 35 [PluginDependency("HeuristicLab.Problems.DataAnalysis.Views", "3.4")] 45 [PluginDependency("HeuristicLab.Problems.Instances", "3.3")]46 36 [PluginDependency("HeuristicLab.Problems.DataAnalysis.Trading", "3.4")] 47 37 [PluginDependency("HeuristicLab.Visualization.ChartControlsExtensions", "3.3")] -
stable/HeuristicLab.Problems.DataAnalysis.Trading.Views/3.4/Properties
-
Property
svn:ignore
set to
AssemblyInfo.cs
-
Property
svn:ignore
set to
-
stable/HeuristicLab.Problems.DataAnalysis.Trading.Views/3.4/SolutionLineChartView.cs
r9796 r10020 53 53 this.chart.ChartAreas[0].CursorY.IsUserSelectionEnabled = true; 54 54 this.chart.ChartAreas[0].AxisY.ScaleView.Zoomable = true; 55 this.chart.ChartAreas[0].AxisY.IntervalAutoMode = IntervalAutoMode.VariableCount; 56 this.chart.ChartAreas[0].AxisY2.ScaleView.Zoomable = false; 57 this.chart.ChartAreas[0].AxisY2.IntervalAutoMode = IntervalAutoMode.VariableCount; 58 this.chart.ChartAreas[0].AxisY2.LabelStyle.Enabled = false; 59 this.chart.ChartAreas[0].AxisY2.MajorGrid.Enabled = false; 60 this.chart.ChartAreas[0].AxisY2.MinorGrid.Enabled = false; 61 this.chart.ChartAreas[0].AxisY2.MajorTickMark.Enabled = false; 62 this.chart.ChartAreas[0].AxisY2.MinorTickMark.Enabled = false; 55 63 this.chart.ChartAreas[0].CursorY.Interval = 0; 56 64 } … … 59 67 this.chart.Series.Clear(); 60 68 if (Content != null) { 69 var trainingRows = Content.ProblemData.TrainingIndices; 70 var testRows = Content.ProblemData.TestIndices; 61 71 this.chart.Series.Add(SIGNALS_SERIES_NAME); 72 this.chart.Series[SIGNALS_SERIES_NAME].YAxisType = AxisType.Secondary; 62 73 this.chart.Series[SIGNALS_SERIES_NAME].LegendText = SIGNALS_SERIES_NAME; 63 74 this.chart.Series[SIGNALS_SERIES_NAME].ChartType = SeriesChartType.FastLine; 64 this.chart.Series[SIGNALS_SERIES_NAME].Points.DataBindY(Content.Signals.ToArray()); 75 this.chart.Series[SIGNALS_SERIES_NAME].Points.DataBindXY( 76 trainingRows.Concat(testRows).ToArray(), 77 Content.TrainingSignals.Concat(Content.TestSignals).ToArray()); 65 78 this.chart.Series[SIGNALS_SERIES_NAME].Tag = Content; 66 79 67 IEnumerable<double> accumulatedPrice = GetAccumulatedPrices(Content.ProblemData.Dataset.GetDoubleValues(Content.ProblemData.PriceVariable)); 80 var trainingPriceChanges = Content.ProblemData.Dataset.GetDoubleValues(Content.ProblemData.PriceChangeVariable, 81 trainingRows); 82 var testPriceChanges = Content.ProblemData.Dataset.GetDoubleValues(Content.ProblemData.PriceChangeVariable, 83 testRows); 84 IEnumerable<double> accumulatedTrainingPrice = GetAccumulatedProfits(trainingPriceChanges); 85 IEnumerable<double> accumulatedTestPrice = GetAccumulatedProfits(testPriceChanges); 68 86 this.chart.Series.Add(PRICEVARIABLE_SERIES_NAME); 87 this.chart.Series[PRICEVARIABLE_SERIES_NAME].YAxisType = AxisType.Primary; 69 88 this.chart.Series[PRICEVARIABLE_SERIES_NAME].LegendText = PRICEVARIABLE_SERIES_NAME; 70 89 this.chart.Series[PRICEVARIABLE_SERIES_NAME].ChartType = SeriesChartType.FastLine; 71 this.chart.Series[PRICEVARIABLE_SERIES_NAME].Points.DataBindY(accumulatedPrice.ToArray()); 90 this.chart.Series[PRICEVARIABLE_SERIES_NAME].Points.DataBindXY( 91 trainingRows.Concat(testRows).ToArray(), 92 accumulatedTrainingPrice.Concat(accumulatedTestPrice).ToArray()); 72 93 this.chart.Series[PRICEVARIABLE_SERIES_NAME].Tag = Content; 73 94 74 IEnumerable<double> profit = OnlineProfitCalculator.GetProfits(Content.ProblemData.Dataset.GetDoubleValues(Content.ProblemData.PriceVariable), Content.Signals, Content.ProblemData.TransactionCosts); 75 IEnumerable<double> accumulatedProfits = GetAccumulatedPrices(profit); 95 96 IEnumerable<double> trainingProfit = OnlineProfitCalculator.GetProfits(trainingPriceChanges, Content.TrainingSignals, Content.ProblemData.TransactionCosts); 97 IEnumerable<double> testProfit = OnlineProfitCalculator.GetProfits(testPriceChanges, Content.TestSignals, Content.ProblemData.TransactionCosts); 98 IEnumerable<double> accTrainingProfit = GetAccumulatedProfits(trainingProfit); 99 IEnumerable<double> accTestProfit = GetAccumulatedProfits(testProfit); 76 100 this.chart.Series.Add(ASSET_SERIES_NAME); 101 this.chart.Series[ASSET_SERIES_NAME].YAxisType = AxisType.Primary; 77 102 this.chart.Series[ASSET_SERIES_NAME].LegendText = ASSET_SERIES_NAME; 78 103 this.chart.Series[ASSET_SERIES_NAME].ChartType = SeriesChartType.FastLine; 79 this.chart.Series[ASSET_SERIES_NAME].Points.DataBindY(accumulatedProfits.ToArray()); 104 this.chart.Series[ASSET_SERIES_NAME].Points.DataBindXY( 105 trainingRows.Concat(testRows).ToArray(), 106 accTrainingProfit.Concat(accTestProfit).ToArray()); 80 107 this.chart.Series[ASSET_SERIES_NAME].Tag = Content; 81 108 … … 84 111 } 85 112 86 private IEnumerable<double> GetAccumulatedPr ices(IEnumerable<double> xs) {113 private IEnumerable<double> GetAccumulatedProfits(IEnumerable<double> xs) { 87 114 double sum = 0; 88 115 foreach (var x in xs) { -
stable/HeuristicLab.Problems.DataAnalysis.Trading.Views/3.4/SolutionView.Designer.cs
r9796 r10020 52 52 this.detailsGroupBox.SuspendLayout(); 53 53 this.SuspendLayout(); 54 this.exportButton.Visible = false; 54 55 // 55 56 // splitContainer … … 58 59 // itemsGroupBox 59 60 // 60 this.itemsGroupBox.Text = " RegressionSolution";61 this.itemsGroupBox.Text = "Trading Solution"; 61 62 // 62 63 // addButton … … 72 73 this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); 73 74 this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; 74 this.Name = " RegressionSolutionView";75 this.Name = "TradingSolutionView"; 75 76 this.splitContainer.Panel1.ResumeLayout(false); 76 77 this.splitContainer.Panel2.ResumeLayout(false); -
stable/HeuristicLab.Problems.DataAnalysis.Trading.Views/3.4/SolutionView.cs
r9796 r10020 26 26 27 27 namespace HeuristicLab.Problems.DataAnalysis.Trading.Views { 28 [View("Trading Solution View")]28 [View("Trading Solution View")] 29 29 [Content(typeof(Solution), true)] 30 30 public partial class SolutionView : DataAnalysisSolutionView { … … 32 32 InitializeComponent(); 33 33 34 var regressionSolutionEvaluationViewTypes = ApplicationManager.Manager.GetTypes(typeof(ISolutionEvaluationView), true);35 foreach (Type viewType in regressionSolutionEvaluationViewTypes)34 var solutionEvaluationViewTypes = ApplicationManager.Manager.GetTypes(typeof(ISolutionEvaluationView)); 35 foreach (Type viewType in solutionEvaluationViewTypes) 36 36 AddViewListViewItem(viewType, HeuristicLab.Common.Resources.VSImageLibrary.Graph); 37 37 } -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Calculators/OnlineProfitCalculator.cs
r9744 r10020 28 28 public class OnlineProfitCalculator : IOnlineCalculator { 29 29 30 private int p ;30 private int position; // currently held position: -1: short, 0: out of market, 1: long 31 31 private readonly double transactionCost; 32 private int c ;33 private double sum;32 private int count; // only necessary to reset position and total profit on the first data point 33 private double totalProfit; 34 34 public double Profit { 35 get { return sum; }35 get { return totalProfit; } 36 36 } 37 37 … … 49 49 } 50 50 public void Reset() { 51 p = 0;52 c = 0;53 sum= 0.0;51 position = 0; 52 count = 0; 53 totalProfit = 0.0; 54 54 } 55 55 56 56 public void Add(double actualReturn, double signal) { 57 double iterationReturn= 0.0;58 if (c == 0) {59 p = (int)signal;60 iterationReturn= 0;61 c ++;57 double profit = 0.0; 58 if (count == 0) { 59 position = (int)signal; 60 profit = 0; 61 count++; 62 62 } else { 63 if (p == 0 && signal.IsAlmost(0)) {64 } else if (p == 0 && signal.IsAlmost(1)) {65 p = 1;66 iterationReturn= -transactionCost;67 } else if (p == 0 && signal.IsAlmost(-1)) {68 p = -1;69 iterationReturn= -transactionCost;70 } else if (p == 1 && signal.IsAlmost(1)) {71 iterationReturn= actualReturn;72 } else if (p == 1 && signal.IsAlmost(0)) {73 iterationReturn= actualReturn - transactionCost;74 p = 0;75 } else if (p == 1 && signal.IsAlmost(-1)) {76 iterationReturn= actualReturn - transactionCost;77 p = -1;78 } else if (p == -1 && signal.IsAlmost(-1)) {79 iterationReturn= -actualReturn;80 } else if (p == -1 && signal.IsAlmost(0)) {81 iterationReturn= -actualReturn - transactionCost;82 p = 0;83 } else if (p == -1 && signal.IsAlmost(1)) {84 iterationReturn= -actualReturn - transactionCost;85 p = 1;63 if (position == 0 && signal.IsAlmost(0)) { 64 } else if (position == 0 && signal.IsAlmost(1)) { 65 position = 1; 66 profit = -transactionCost; 67 } else if (position == 0 && signal.IsAlmost(-1)) { 68 position = -1; 69 profit = -transactionCost; 70 } else if (position == 1 && signal.IsAlmost(1)) { 71 profit = actualReturn; 72 } else if (position == 1 && signal.IsAlmost(0)) { 73 profit = actualReturn - transactionCost; 74 position = 0; 75 } else if (position == 1 && signal.IsAlmost(-1)) { 76 profit = actualReturn - transactionCost; 77 position = -1; 78 } else if (position == -1 && signal.IsAlmost(-1)) { 79 profit = -actualReturn; 80 } else if (position == -1 && signal.IsAlmost(0)) { 81 profit = -actualReturn - transactionCost; 82 position = 0; 83 } else if (position == -1 && signal.IsAlmost(1)) { 84 profit = -actualReturn - transactionCost; 85 position = 1; 86 86 } 87 c ++;87 count++; 88 88 } 89 sum += iterationReturn;89 totalProfit += profit; 90 90 } 91 91 #endregion -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/HeuristicLab.Problems.DataAnalysis.Trading-3.4.csproj
r9799 r10020 41 41 <DebugType>full</DebugType> 42 42 <Optimize>false</Optimize> 43 <OutputPath>..\..\ ..\..\trunk\sources\bin\</OutputPath>43 <OutputPath>..\..\bin\</OutputPath> 44 44 <DefineConstants>DEBUG;TRACE</DefineConstants> 45 45 <ErrorReport>prompt</ErrorReport> … … 50 50 <DebugType>pdbonly</DebugType> 51 51 <Optimize>true</Optimize> 52 <OutputPath> bin\Release\</OutputPath>52 <OutputPath>..\..\bin\</OutputPath> 53 53 <DefineConstants>TRACE</DefineConstants> 54 54 <ErrorReport>prompt</ErrorReport> … … 58 58 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x64' "> 59 59 <DebugSymbols>true</DebugSymbols> 60 <OutputPath>..\..\ ..\..\trunk\sources\bin\</OutputPath>60 <OutputPath>..\..\bin\</OutputPath> 61 61 <DefineConstants>DEBUG;TRACE</DefineConstants> 62 62 <DebugType>full</DebugType> … … 66 66 </PropertyGroup> 67 67 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x64' "> 68 <OutputPath> bin\x64\Release\</OutputPath>68 <OutputPath>..\..\bin\</OutputPath> 69 69 <DefineConstants>TRACE</DefineConstants> 70 70 <Optimize>true</Optimize> … … 76 76 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> 77 77 <DebugSymbols>true</DebugSymbols> 78 <OutputPath>..\..\ ..\..\trunk\sources\bin\</OutputPath>78 <OutputPath>..\..\bin\</OutputPath> 79 79 <DefineConstants>DEBUG;TRACE</DefineConstants> 80 80 <DebugType>full</DebugType> … … 84 84 </PropertyGroup> 85 85 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> 86 <OutputPath> bin\x86\Release\</OutputPath>86 <OutputPath>..\..\bin\</OutputPath> 87 87 <DefineConstants>TRACE</DefineConstants> 88 88 <Optimize>true</Optimize> … … 93 93 </PropertyGroup> 94 94 <ItemGroup> 95 <Reference Include="HeuristicLab.Collections-3.3">96 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Collections-3.3.dll</HintPath>97 </Reference>98 <Reference Include="HeuristicLab.Common-3.3">99 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Common-3.3.dll</HintPath>100 </Reference>101 <Reference Include="HeuristicLab.Core-3.3">102 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Core-3.3.dll</HintPath>103 </Reference>104 <Reference Include="HeuristicLab.Data-3.3">105 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Data-3.3.dll</HintPath>106 </Reference>107 <Reference Include="HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4">108 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.dll</HintPath>109 </Reference>110 <Reference Include="HeuristicLab.Operators-3.3">111 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Operators-3.3.dll</HintPath>112 </Reference>113 <Reference Include="HeuristicLab.Optimization-3.3">114 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Optimization-3.3.dll</HintPath>115 </Reference>116 <Reference Include="HeuristicLab.Parameters-3.3">117 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Parameters-3.3.dll</HintPath>118 </Reference>119 <Reference Include="HeuristicLab.Persistence-3.3">120 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Persistence-3.3.dll</HintPath>121 </Reference>122 <Reference Include="HeuristicLab.PluginInfrastructure-3.3">123 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.PluginInfrastructure-3.3.dll</HintPath>124 </Reference>125 <Reference Include="HeuristicLab.Problems.DataAnalysis-3.4">126 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis-3.4.dll</HintPath>127 </Reference>128 <Reference Include="HeuristicLab.Problems.DataAnalysis.Symbolic-3.4">129 <HintPath>c:\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.dll</HintPath>130 </Reference>131 <Reference Include="HeuristicLab.Problems.Instances-3.3">132 <HintPath>..\..\..\..\..\..\Program Files\HeuristicLab 3.3\HeuristicLab.Problems.Instances-3.3.dll</HintPath>133 </Reference>134 95 <Reference Include="System" /> 135 96 <Reference Include="System.Core"> … … 137 98 </Reference> 138 99 <Reference Include="System.Drawing" /> 100 <Reference Include="System.Xml" /> 139 101 </ItemGroup> 140 102 <ItemGroup> 141 103 <Compile Include="Calculators\OnlineProfitCalculator.cs" /> 142 104 <Compile Include="Calculators\OnlineSharpeRatioCalculator.cs" /> 105 <Compile Include="InstanceProviders\CsvProblemInstanceProvider.cs" /> 106 <Compile Include="InstanceProviders\EcbProblemInstanceProvider.cs" /> 143 107 <Compile Include="Interfaces\IModel.cs" /> 144 108 <Compile Include="Interfaces\IProblem.cs" /> … … 146 110 <Compile Include="Interfaces\ISolution.cs" /> 147 111 <Compile Include="Plugin.cs" /> 148 <Compile Include="Problem.cs" />149 112 <Compile Include="ProblemData.cs" /> 150 113 <Compile Include="Solution.cs" /> … … 183 146 </BootstrapperPackage> 184 147 </ItemGroup> 185 <ItemGroup /> 148 <ItemGroup> 149 <ProjectReference Include="..\..\HeuristicLab.Collections\3.3\HeuristicLab.Collections-3.3.csproj"> 150 <Project>{958b43bc-cc5c-4fa2-8628-2b3b01d890b6}</Project> 151 <Name>HeuristicLab.Collections-3.3</Name> 152 <Private>False</Private> 153 </ProjectReference> 154 <ProjectReference Include="..\..\HeuristicLab.Common\3.3\HeuristicLab.Common-3.3.csproj"> 155 <Project>{a9ad58b9-3ef9-4cc1-97e5-8d909039ff5c}</Project> 156 <Name>HeuristicLab.Common-3.3</Name> 157 <Private>False</Private> 158 </ProjectReference> 159 <ProjectReference Include="..\..\HeuristicLab.Core\3.3\HeuristicLab.Core-3.3.csproj"> 160 <Project>{c36bd924-a541-4a00-afa8-41701378ddc5}</Project> 161 <Name>HeuristicLab.Core-3.3</Name> 162 <Private>False</Private> 163 </ProjectReference> 164 <ProjectReference Include="..\..\HeuristicLab.Data\3.3\HeuristicLab.Data-3.3.csproj"> 165 <Project>{bbab9df5-5ef3-4ba8-ade9-b36e82114937}</Project> 166 <Name>HeuristicLab.Data-3.3</Name> 167 <Private>False</Private> 168 </ProjectReference> 169 <ProjectReference Include="..\..\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding\3.4\HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4.csproj"> 170 <Project>{06d4a186-9319-48a0-bade-a2058d462eea}</Project> 171 <Name>HeuristicLab.Encodings.SymbolicExpressionTreeEncoding-3.4</Name> 172 <Private>False</Private> 173 </ProjectReference> 174 <ProjectReference Include="..\..\HeuristicLab.Operators\3.3\HeuristicLab.Operators-3.3.csproj"> 175 <Project>{23da7ff4-d5b8-41b6-aa96-f0561d24f3ee}</Project> 176 <Name>HeuristicLab.Operators-3.3</Name> 177 <Private>False</Private> 178 </ProjectReference> 179 <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj"> 180 <Project>{14ab8d24-25bc-400c-a846-4627aa945192}</Project> 181 <Name>HeuristicLab.Optimization-3.3</Name> 182 <Private>False</Private> 183 </ProjectReference> 184 <ProjectReference Include="..\..\HeuristicLab.Parameters\3.3\HeuristicLab.Parameters-3.3.csproj"> 185 <Project>{56f9106a-079f-4c61-92f6-86a84c2d84b7}</Project> 186 <Name>HeuristicLab.Parameters-3.3</Name> 187 <Private>False</Private> 188 </ProjectReference> 189 <ProjectReference Include="..\..\HeuristicLab.Persistence\3.3\HeuristicLab.Persistence-3.3.csproj"> 190 <Project>{102bc7d3-0ef9-439c-8f6d-96ff0fdb8e1b}</Project> 191 <Name>HeuristicLab.Persistence-3.3</Name> 192 <Private>False</Private> 193 </ProjectReference> 194 <ProjectReference Include="..\..\HeuristicLab.PluginInfrastructure\3.3\HeuristicLab.PluginInfrastructure-3.3.csproj"> 195 <Project>{94186a6a-5176-4402-ae83-886557b53cca}</Project> 196 <Name>HeuristicLab.PluginInfrastructure-3.3</Name> 197 <Private>False</Private> 198 </ProjectReference> 199 <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis.Symbolic\3.4\HeuristicLab.Problems.DataAnalysis.Symbolic-3.4.csproj"> 200 <Project>{3d28463f-ec96-4d82-afee-38be91a0ca00}</Project> 201 <Name>HeuristicLab.Problems.DataAnalysis.Symbolic-3.4</Name> 202 <Private>False</Private> 203 </ProjectReference> 204 <ProjectReference Include="..\..\HeuristicLab.Problems.DataAnalysis\3.4\HeuristicLab.Problems.DataAnalysis-3.4.csproj"> 205 <Project>{df87c13e-a889-46ff-8153-66dcaa8c5674}</Project> 206 <Name>HeuristicLab.Problems.DataAnalysis-3.4</Name> 207 <Private>False</Private> 208 </ProjectReference> 209 <ProjectReference Include="..\..\HeuristicLab.Problems.Instances.DataAnalysis\3.3\HeuristicLab.Problems.Instances.DataAnalysis-3.3.csproj"> 210 <Project>{94C7714E-29D4-4D6D-B213-2C18D627AB75}</Project> 211 <Name>HeuristicLab.Problems.Instances.DataAnalysis-3.3</Name> 212 </ProjectReference> 213 <ProjectReference Include="..\..\HeuristicLab.Problems.Instances\3.3\HeuristicLab.Problems.Instances-3.3.csproj"> 214 <Project>{3540E29E-4793-49E7-8EE2-FEA7F61C3994}</Project> 215 <Name>HeuristicLab.Problems.Instances-3.3</Name> 216 <Private>False</Private> 217 </ProjectReference> 218 </ItemGroup> 186 219 <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> 187 220 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. … … 193 226 --> 194 227 <PropertyGroup> 195 <PreBuildEvent>set Path=%25Path%25;$(ProjectDir);$(SolutionDir) 196 set ProjectDir=$(ProjectDir) 197 set SolutionDir=$(SolutionDir) 198 set Outdir=$(Outdir) 228 <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' "> 229 set Path=%25Path%25;$(ProjectDir);$(SolutionDir) 230 set ProjectDir=$(ProjectDir) 231 set SolutionDir=$(SolutionDir) 232 set Outdir=$(Outdir) 199 233 200 call PreBuildEvent.cmd 201 </PreBuildEvent> 234 call PreBuildEvent.cmd 235 </PreBuildEvent> 236 <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' "> 237 export ProjectDir=$(ProjectDir) 238 export SolutionDir=$(SolutionDir) 239 240 $SolutionDir/PreBuildEvent.sh 241 </PreBuildEvent> 202 242 </PropertyGroup> 203 243 </Project> -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/InstanceProviders/EcbProblemInstanceProvider.cs
r9997 r10020 110 110 } 111 111 } 112 // keep only the rows with data for this exchange rate 113 if (tList.Count > dList.Count) 114 tList.RemoveRange(dList.Count, tList.Count - dList.Count); 115 else if (dList.Count > tList.Count) 116 dList.RemoveRange(tList.Count, dList.Count - tList.Count); 117 112 118 // entries in ECB XML are ordered most recent first => reverse lists 113 119 tList.Reverse(); 114 120 dList.Reverse(); 121 115 122 // calculate exchange rate deltas 116 123 var changes = new[] { 0.0 } // first element -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Interfaces/IProblemData.cs
r9745 r10020 22 22 namespace HeuristicLab.Problems.DataAnalysis.Trading { 23 23 public interface IProblemData : IDataAnalysisProblemData { 24 string Price Variable { get; }24 string PriceChangeVariable { get; } 25 25 double TransactionCosts { get; } 26 26 } -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Plugin.cs.frame
r9799 r10020 38 38 [PluginDependency("HeuristicLab.Problems.DataAnalysis.Symbolic", "3.4")] 39 39 [PluginDependency("HeuristicLab.Problems.Instances", "3.3")] 40 [PluginDependency("HeuristicLab.Problems.Instances.DataAnalysis", "3.3")] 40 41 public class Plugin : PluginBase { 41 42 } -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/ProblemData.cs
r9745 r10020 33 33 [Item("TradingProblemData", "Represents an item containing all data defining a trading problem.")] 34 34 public sealed class ProblemData : DataAnalysisProblemData, IProblemData { 35 private const string Price VariableParameterName = "PriceVariable";35 private const string PriceChangeVariableParameterName = "PriceChangeVariable"; 36 36 private const string TransactionCostsParameterName = "TransactionCosts"; 37 37 … … 1589 1589 1590 1590 static ProblemData() { 1591 defaultDataset = new Dataset(new string[] { " AUD" }, audInUsdDiff);1591 defaultDataset = new Dataset(new string[] { "d(AUD/USD)/dt" }, audInUsdDiff); 1592 1592 defaultDataset.Name = "AUD in USD"; 1593 defaultDataset.Description = " Price ofAustralian dollar in US dollar.";1594 defaultAllowedInputVariables = new List<string>() { " AUD" };1595 defaultPriceVariable = " AUD";1593 defaultDataset.Description = "Australian dollar in US dollar."; 1594 defaultAllowedInputVariables = new List<string>() { "d(AUD/USD)/dt" }; 1595 defaultPriceVariable = "d(AUD/USD)/dt"; 1596 1596 } 1597 1597 #endregion 1598 1598 1599 public I ValueParameter<StringValue> PriceVariableParameter {1600 get { return (I ValueParameter<StringValue>)Parameters[PriceVariableParameterName]; }1599 public IConstrainedValueParameter<StringValue> PriceChangeVariableParameter { 1600 get { return (IConstrainedValueParameter<StringValue>)Parameters[PriceChangeVariableParameterName]; } 1601 1601 } 1602 1602 public IValueParameter<DoubleValue> TransactionCostsParameter { 1603 1603 get { return (IValueParameter<DoubleValue>)Parameters[TransactionCostsParameterName]; } 1604 1604 } 1605 public string Price Variable {1606 get { return Price VariableParameter.Value.Value; }1605 public string PriceChangeVariable { 1606 get { return PriceChangeVariableParameter.Value.Value; } 1607 1607 } 1608 1608 public double TransactionCosts { … … 1630 1630 : base(dataset, allowedInputVariables) { 1631 1631 var variables = InputVariables.Select(x => x.AsReadOnly()).ToList(); 1632 Parameters.Add(new ConstrainedValueParameter<StringValue>(Price VariableParameterName, new ItemSet<StringValue>(variables), variables.First(x => x.Value == targetVariable)));1632 Parameters.Add(new ConstrainedValueParameter<StringValue>(PriceChangeVariableParameterName, new ItemSet<StringValue>(variables), variables.First(x => x.Value == targetVariable))); 1633 1633 Parameters.Add(new FixedValueParameter<DoubleValue>(TransactionCostsParameterName, "The absolute cost of on buy/sell transaction (assumed to be constant and independent of transaction volume)", new DoubleValue(0.0002))); 1634 1635 if (dataset.GetReadOnlyDoubleValues(targetVariable).Min() >= 0) throw new ArgumentException("The target variable must contain changes (deltas) of the asset price over time."); 1636 1634 1637 RegisterParameterEvents(); 1635 1638 } 1636 1639 1637 1640 private void RegisterParameterEvents() { 1638 Price VariableParameter.ValueChanged += new EventHandler(PriceVariableParameter_ValueChanged);1641 PriceChangeVariableParameter.ValueChanged += new EventHandler(PriceVariableParameter_ValueChanged); 1639 1642 TransactionCostsParameter.Value.ValueChanged += new EventHandler(TransactionCostsParameter_ValueChanged); 1640 1643 } … … 1644 1647 } 1645 1648 private void PriceVariableParameter_ValueChanged(object sender, EventArgs e) { 1649 if (Dataset.GetReadOnlyDoubleValues(PriceChangeVariable).Min() >= 0) throw new ArgumentException("The target variable must contain changes (deltas) of the asset price over time."); 1646 1650 OnChanged(); 1647 1651 } -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Solution.cs
r9745 r10020 80 80 } 81 81 82 83 protected override void OnModelChanged() {84 base.OnModelChanged();85 RecalculateResults();86 }87 88 protected override void OnProblemDataChanged() {89 base.OnProblemDataChanged();90 RecalculateResults();91 }92 93 82 protected override void RecalculateResults() { 94 83 CalculateTradingResults(); … … 97 86 protected void CalculateTradingResults() { 98 87 double[] trainingSignals = TrainingSignals.ToArray(); // cache values 99 IEnumerable<double> trainingReturns = ProblemData.Dataset.GetDoubleValues(ProblemData.Price Variable, ProblemData.TrainingIndices);88 IEnumerable<double> trainingReturns = ProblemData.Dataset.GetDoubleValues(ProblemData.PriceChangeVariable, ProblemData.TrainingIndices); 100 89 double[] testSignals = TestSignals.ToArray(); // cache values 101 IEnumerable<double> testReturns = ProblemData.Dataset.GetDoubleValues(ProblemData.Price Variable, ProblemData.TestIndices);90 IEnumerable<double> testReturns = ProblemData.Dataset.GetDoubleValues(ProblemData.PriceChangeVariable, ProblemData.TestIndices); 102 91 103 92 OnlineCalculatorError errorState; … … 115 104 116 105 public virtual IEnumerable<double> Signals { 117 get { 118 return GetSignals(Enumerable.Range(0, ProblemData.Dataset.Rows)); 119 } 106 get { return GetSignals(Enumerable.Range(0, ProblemData.Dataset.Rows)); } 120 107 } 121 122 108 public virtual IEnumerable<double> TrainingSignals { 123 get { 124 return GetSignals(ProblemData.TrainingIndices); 125 } 109 get { return GetSignals(ProblemData.TrainingIndices); } 126 110 } 127 128 111 public virtual IEnumerable<double> TestSignals { 129 get { 130 return GetSignals(ProblemData.TestIndices); 131 } 112 get { return GetSignals(ProblemData.TestIndices); } 132 113 } 133 134 114 public virtual IEnumerable<double> GetSignals(IEnumerable<int> rows) { 135 115 return Model.GetSignals(ProblemData.Dataset, rows); -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/Interfaces/IEvaluator.cs
r9745 r10020 20 20 #endregion 21 21 22 using HeuristicLab.Problems.DataAnalysis. Trading;22 using HeuristicLab.Problems.DataAnalysis.Symbolic; 23 23 24 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{24 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 25 25 public interface IEvaluator : ISymbolicDataAnalysisEvaluator<IProblemData> { 26 26 } -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/Interfaces/IModel.cs
r9745 r10020 20 20 #endregion 21 21 22 using HeuristicLab.Problems.DataAnalysis. Trading;22 using HeuristicLab.Problems.DataAnalysis.Symbolic; 23 23 24 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{25 public interface IModel : DataAnalysis.Trading.IModel, ISymbolicDataAnalysisModel {24 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 25 public interface IModel : Trading.IModel, ISymbolicDataAnalysisModel { 26 26 } 27 27 } -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/Interfaces/ISingleObjectiveEvaluator.cs
r9745 r10020 20 20 #endregion 21 21 22 using HeuristicLab.Problems.DataAnalysis. Trading;22 using HeuristicLab.Problems.DataAnalysis.Symbolic; 23 23 24 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{24 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 25 25 public interface ISingleObjectiveEvaluator : IEvaluator, ISymbolicDataAnalysisSingleObjectiveEvaluator<IProblemData> { 26 26 } -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/Interfaces/ISolution.cs
r9745 r10020 20 20 #endregion 21 21 22 using HeuristicLab.Problems.DataAnalysis.Symbolic; 22 23 23 using HeuristicLab.Problems.DataAnalysis.Trading; 24 25 namespace HeuristicLab.Problems.DataAnalysis.Symbolic.Trading { 26 public interface ISolution : DataAnalysis.Trading.ISolution, ISymbolicDataAnalysisSolution { 24 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 25 public interface ISolution : Trading.ISolution, ISymbolicDataAnalysisSolution { 27 26 new IModel Model { get; } 28 27 } -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/Model.cs
r9745 r10020 26 26 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 27 27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 28 using HeuristicLab.Problems.DataAnalysis.Symbolic; 28 29 29 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{30 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 30 31 /// <summary> 31 32 /// Represents a symbolic trading model -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/SingleObjective/Evaluator.cs
r9745 r10020 23 23 using HeuristicLab.Common; 24 24 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 25 using HeuristicLab.Problems.DataAnalysis. Trading;25 using HeuristicLab.Problems.DataAnalysis.Symbolic; 26 26 27 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{27 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 28 28 public abstract class SingleObjectiveEvaluator : SymbolicDataAnalysisSingleObjectiveEvaluator<IProblemData>, ISingleObjectiveEvaluator { 29 29 [StorableConstructor] -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/SingleObjective/Problem.cs
r9745 r10020 23 23 using HeuristicLab.Core; 24 24 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 25 using HeuristicLab.Problems.DataAnalysis. Trading;25 using HeuristicLab.Problems.DataAnalysis.Symbolic; 26 26 27 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{27 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 28 28 [Item("Symbolic Trading Problem (single objective)", "Represents a single objective symbolic trading problem.")] 29 29 [StorableClass] … … 45 45 46 46 InitializeOperators(); 47 ConfigureGrammarSymbols(); 48 } 49 50 private void ConfigureGrammarSymbols() { 51 var grammar = SymbolicExpressionTreeGrammar as TypeCoherentExpressionGrammar; 52 if (grammar != null) grammar.ConfigureAsDefaultTimeSeriesPrognosisGrammar(); 47 53 } 48 54 -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/SingleObjective/ProfitEvaluator.cs
r9745 r10020 21 21 22 22 using System.Collections.Generic; 23 using System.Linq;24 23 using HeuristicLab.Common; 25 24 using HeuristicLab.Core; … … 27 26 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 28 27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 29 using HeuristicLab.Problems.DataAnalysis. Trading;28 using HeuristicLab.Problems.DataAnalysis.Symbolic; 30 29 31 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{30 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 32 31 [Item("Profit Evaluator", "")] 33 32 [StorableClass] … … 60 59 public static double Calculate(ISymbolicDataAnalysisExpressionTreeInterpreter interpreter, ISymbolicExpressionTree solution, IProblemData problemData, IEnumerable<int> rows) { 61 60 IEnumerable<double> signals = GetSignals(interpreter, solution, problemData.Dataset, rows); 62 IEnumerable<double> returns = problemData.Dataset.GetDoubleValues(problemData.Price Variable, rows);61 IEnumerable<double> returns = problemData.Dataset.GetDoubleValues(problemData.PriceChangeVariable, rows); 63 62 OnlineCalculatorError errorState; 64 63 double profit = OnlineProfitCalculator.Calculate(returns, signals, problemData.TransactionCosts, out errorState); -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/SingleObjective/SharpeRatioEvaluator.cs
r9745 r10020 21 21 22 22 using System.Collections.Generic; 23 using System.Linq;24 23 using HeuristicLab.Common; 25 24 using HeuristicLab.Core; … … 27 26 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 28 27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 29 using HeuristicLab.Problems.DataAnalysis. Trading;28 using HeuristicLab.Problems.DataAnalysis.Symbolic; 30 29 31 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{30 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 32 31 [Item("Sharpe Ratio Evaluator", "")] 33 32 [StorableClass] … … 60 59 public static double Calculate(ISymbolicDataAnalysisExpressionTreeInterpreter interpreter, ISymbolicExpressionTree solution, IProblemData problemData, IEnumerable<int> rows) { 61 60 IEnumerable<double> signals = GetSignals(interpreter, solution, problemData.Dataset, rows); 62 IEnumerable<double> returns = problemData.Dataset.GetDoubleValues(problemData.Price Variable, rows);61 IEnumerable<double> returns = problemData.Dataset.GetDoubleValues(problemData.PriceChangeVariable, rows); 63 62 OnlineCalculatorError errorState; 64 63 double sharpRatio = OnlineSharpeRatioCalculator.Calculate(returns, signals, problemData.TransactionCosts, out errorState); -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/SingleObjective/TrainingBestSolutionAnalyzer.cs
r9745 r10020 25 25 using HeuristicLab.Parameters; 26 26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 27 using HeuristicLab.Problems.DataAnalysis. Trading;27 using HeuristicLab.Problems.DataAnalysis.Symbolic; 28 28 29 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{29 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 30 30 /// <summary> 31 31 /// An operator that analyzes the training best symbolic trading solution for single objective symbolic trading problems. -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/SingleObjective/ValidationBestSolutionAnalyzer.cs
r9745 r10020 24 24 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 25 25 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 26 using HeuristicLab.Problems.DataAnalysis. Trading;26 using HeuristicLab.Problems.DataAnalysis.Symbolic; 27 27 28 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{28 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 29 29 /// <summary> 30 30 /// An operator that analyzes the validation best symbolic trading solution for single objective symbolic trading problems. -
stable/HeuristicLab.Problems.DataAnalysis.Trading/3.4/Symbolic/Solution.cs
r9745 r10020 25 25 using HeuristicLab.Optimization; 26 26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 27 using HeuristicLab.Problems.DataAnalysis. Trading;27 using HeuristicLab.Problems.DataAnalysis.Symbolic; 28 28 29 namespace HeuristicLab.Problems.DataAnalysis. Symbolic.Trading{29 namespace HeuristicLab.Problems.DataAnalysis.Trading.Symbolic { 30 30 /// <summary> 31 31 /// Represents a symbolic trading solution (model + data) and attributes of the solution like accuracy and complexity -
stable/HeuristicLab.Problems.Instances.DataAnalysis
- Property svn:mergeinfo changed
/trunk/sources/HeuristicLab.Problems.Instances.DataAnalysis merged: 9989
- Property svn:mergeinfo changed
-
stable/HeuristicLab.Problems.Instances.DataAnalysis/3.3/Regression/CSV/RegressionCSVInstanceProvider.cs
r9651 r10020 62 62 string targetVar = dataset.DoubleVariables.Last(); 63 63 64 // turn of input variables that are constant in the training partition64 // turn off input variables that are constant in the training partition 65 65 var allowedInputVars = new List<string>(); 66 66 var trainingIndizes = Enumerable.Range(0, (csvFileParser.Rows * 2) / 3); -
stable/HeuristicLab.Problems.Instances.Views/3.3/ProblemInstanceProviderViewGeneric.cs
r9456 r10020 21 21 22 22 using System; 23 using System.ComponentModel; 23 24 using System.Linq; 25 using System.Threading.Tasks; 24 26 using System.Windows.Forms; 25 27 using HeuristicLab.MainForm; … … 88 90 89 91 private void instancesComboBox_SelectionChangeCommitted(object sender, System.EventArgs e) { 92 toolTip.SetToolTip(instancesComboBox, String.Empty); 90 93 if (instancesComboBox.SelectedIndex >= 0) { 91 94 var descriptor = (IDataDescriptor)instancesComboBox.SelectedItem; 92 T instance = Content.LoadData(descriptor); 93 try { 94 GenericConsumer.Load(instance); 95 } catch (Exception ex) { 96 ErrorHandling.ShowErrorDialog(String.Format("This problem does not support loading the instance {0}", descriptor.Name), ex); 97 } 98 toolTip.SetToolTip(instancesComboBox, descriptor.Description); 99 } else toolTip.SetToolTip(instancesComboBox, String.Empty); 95 96 IContentView activeView = (IContentView)MainFormManager.MainForm.ActiveView; 97 var mainForm = (MainForm.WindowsForms.MainForm)MainFormManager.MainForm; 98 // lock active view and show progress bar 99 mainForm.AddOperationProgressToContent(activeView.Content, "Loading problem instance."); 100 // continuation for removing the progess bar from the active view 101 Action<Task> removeProgressFromContent = (_) => mainForm.RemoveOperationProgressFromContent(activeView.Content); 102 103 // task structure: 104 // loadFromProvider 105 // | 106 // +-> on fault -> show error dialog -> remove progress bar 107 // | 108 // `-> success -> loadToProblem 109 // | 110 // +-> on fault -> show error dialog -> remove progress bar 111 // | 112 // `-> success -> set tool tip -> remove progress bar 113 var loadFromProvider = new Task<T>(() => Content.LoadData(descriptor)); 114 115 // success 116 var loadToProblem = loadFromProvider 117 .ContinueWith(task => GenericConsumer.Load(task.Result), TaskContinuationOptions.OnlyOnRanToCompletion); 118 // on error 119 loadFromProvider 120 .ContinueWith(task => { ErrorHandling.ShowErrorDialog(String.Format("Could not load the problem instance {0}", descriptor.Name), task.Exception); }, TaskContinuationOptions.OnlyOnFaulted) 121 .ContinueWith(removeProgressFromContent); 122 123 // success 124 loadToProblem 125 .ContinueWith(task => toolTip.SetToolTip(instancesComboBox, descriptor.Description), TaskContinuationOptions.OnlyOnRanToCompletion) 126 .ContinueWith(removeProgressFromContent); 127 // on error 128 loadToProblem.ContinueWith(task => { ErrorHandling.ShowErrorDialog(String.Format("This problem does not support loading the instance {0}", descriptor.Name), task.Exception); }, TaskContinuationOptions.OnlyOnFaulted) 129 .ContinueWith(removeProgressFromContent); 130 131 // start async loading task 132 loadFromProvider.Start(); 133 } 100 134 } 101 135 }
Note: See TracChangeset
for help on using the changeset viewer.