Opened 14 years ago
Closed 11 years ago
#1508 closed feature request (done)
Plugin for optimization of trading rules
Reported by: | gkronber | Owned by: | gkronber |
---|---|---|---|
Priority: | low | Milestone: | HeuristicLab 3.3.9 |
Component: | Problems.DataAnalysis | Version: | 3.3.8 |
Keywords: | Cc: |
Description
For GECCO 2011 industrial challenge (FX trading)
Change History (51)
comment:1 Changed 14 years ago by gkronber
- Status changed from new to accepted
comment:2 Changed 14 years ago by gkronber
comment:3 Changed 14 years ago by gkronber
- Status changed from accepted to assigned
comment:4 Changed 14 years ago by mkommend
Please use absolute instead of relative paths for assembly references. Otherwise only people with the same folder structure can build this plugin.
comment:5 Changed 14 years ago by gkronber
r6131: fixed path for references
comment:6 Changed 14 years ago by gkronber
r6136: improved view for trading solutions.
comment:7 Changed 14 years ago by gkronber
r6138: fixed bug in trading solution view.
comment:8 Changed 13 years ago by gkronber
r6861: bug fixes
comment:9 Changed 12 years ago by gkronber
r9176: updated trading plugin to work with current trunk version
comment:10 Changed 12 years ago by gkronber
r9213: changed the ranges for buy/hold/sell signals (1/3, 1/3, 1/3)
comment:11 Changed 11 years ago by gkronber
- Priority changed from medium to low
This should be integrated into the trunk and a blog post should be published that discusses the implementation.
comment:12 Changed 11 years ago by gkronber
- Status changed from assigned to accepted
comment:13 Changed 11 years ago by gkronber
r9743: updated classes in trading branch to work with current trunk version of HL.
comment:14 Changed 11 years ago by gkronber
r9744: refactoring: removed unused classes, unified calculation of profits and signals, implemented profit-evaluator.
comment:15 Changed 11 years ago by gkronber
r9745: refactoring: removed smurf-naming.
comment:16 Changed 11 years ago by gkronber
r9796: created a separate plug-in for views.
comment:17 Changed 11 years ago by gkronber
r9797: created a separate plug-in for views (remaining commits)
comment:18 Changed 11 years ago by gkronber
r9798: deleted empty directories
comment:19 Changed 11 years ago by gkronber
r9799: renamed plugin files
comment:20 Changed 11 years ago by gkronber
- Milestone changed from HeuristicLab 3.3.x Backlog to HeuristicLab 3.3.9
comment:21 Changed 11 years ago by gkronber
r9801: merged trading plug-in into the trunk
comment:22 Changed 11 years ago by gkronber
comment:23 Changed 11 years ago by gkronber
r9804:9805: merged trading branch into the trunk
comment:24 Changed 11 years ago by gkronber
r9808: deleted feature branch (trading) after trunk merge
comment:25 Changed 11 years ago by gkronber
r9809: included trading plug-ins into trunk solution
comment:26 Changed 11 years ago by gkronber
r9811: removed empty folders from project file and set svn:ignore properties
comment:27 Changed 11 years ago by gkronber
r9812: removed plugin references and change return type to IConstrainedValueParameter
comment:28 Changed 11 years ago by gkronber
r9822: fixed namespace for classes in Trading.Symbolic
comment:29 Changed 11 years ago by gkronber
comment:30 Changed 11 years ago by gkronber
comment:31 Changed 11 years ago by gkronber
- Owner changed from gkronber to mkommend
- Status changed from accepted to reviewing
comment:32 Changed 11 years ago by ascheibe
- Owner changed from mkommend to ascheibe
- Status changed from reviewing to assigned
comment:33 Changed 11 years ago by ascheibe
- Owner changed from ascheibe to mkommend
- Status changed from assigned to reviewing
r9897 fixed Mono compatibility of project files
comment:34 follow-up: ↓ 36 Changed 11 years ago by mkommend
- Version changed from branch to 3.3.8
Review comments:
- What is the purpose of the Problem class and why is it creatable?
- The grammar in the symbolic trading problem is configured in a weird way (all symbols are enabled).
- Creating a GA + symbolic trading problem is not executable as an index out of range exception occurs.
- There is no way to import new data in the problem, which makes the problem practically useless.
- Better variable naming in ProfitCalculator (e.g., c,p,sum).
- Symbolic.SolutionView is superfluous.
comment:35 Changed 11 years ago by mkommend
- Owner changed from mkommend to gkronber
- Status changed from reviewing to assigned
r9928: Minor code cleanup in trading plugin.
comment:36 in reply to: ↑ 34 Changed 11 years ago by gkronber
Replying to mkommend:
Review comments:
- What is the purpose of the Problem class and why is it creatable?
r9939: the file has been deleted
- The grammar in the symbolic trading problem is configured in a weird way (all symbols are enabled).
r9941: configured the grammar of the problem for GP trading as a standard time series problem grammar
- Creating a GA + symbolic trading problem is not executable as an index out of range exception occurs.
This is actually a bug in way how the linear interpreter calls the old interpreter (see #2021). After r9944 the bug does not occur anymore.
- There is no way to import new data in the problem, which makes the problem practically useless.
r9964: added a problem instance provider for the trading problem (the provider downloads historic FX rates from ECB).
- Better variable naming in ProfitCalculator (e.g., c,p,sum).
r9938: variable names have been improved.
- Symbolic.SolutionView is superfluous.
r9940: deleted unnecessary class Symbolic.SolutionView
comment:37 Changed 11 years ago by gkronber
r9965 added plugin dependency
comment:38 Changed 11 years ago by gkronber
r9989: worked on problem instance providers for trading problem
comment:39 Changed 11 years ago by gkronber
- fixed a bug in the ECB problem instance provider (reversed time series)
- improved the ProblemInstanceProviderViewGeneric class to show a progress bar while loading the problem instance
- fixed the build fail (in SolutionLineChartView)
comment:40 Changed 11 years ago by gkronber
- disabled "Variable" symbol in default time series grammar
- in the line chart use two different axis to display signals and prices
- in the line chart display profits for training and test partitions separately
- fixed hard-coded strings in SolutionView
- added plugin dependency
comment:41 Changed 11 years ago by abeham
comment:42 Changed 11 years ago by gkronber
r9995: enabled target variable as input variable for the trading plugin
comment:43 Changed 11 years ago by gkronber
r9997: fixed bugs in line chart visualization for the trading plugin
comment:44 Changed 11 years ago by gkronber
- Owner changed from gkronber to ascheibe
- Status changed from assigned to reviewing
comment:45 Changed 11 years ago by abeham
Not all of the instances of the ECB work: "Could not load the problem instance EUR / BGN". ArgumentException: The number of values must be equal for every variable.
comment:46 Changed 11 years ago by gkronber
Thanks for testing this. I fixed the problem in the ECB data provider (some rates are not available for the full time interval) with r10004.
comment:47 Changed 11 years ago by ascheibe
- Owner changed from ascheibe to gkronber
- Status changed from reviewing to assigned
I have reviewed and tested the changes since mkommends review. The only problem that I found is that the "Export" button in the TradingSolutionView throws an exception. The button should be therefore hidden.
comment:48 Changed 11 years ago by gkronber
- Status changed from assigned to accepted
comment:49 Changed 11 years ago by gkronber
- Owner changed from gkronber to ascheibe
- Status changed from accepted to reviewing
r10015: hide export button in view for symb. trading solutions
comment:50 Changed 11 years ago by ascheibe
- Owner changed from ascheibe to gkronber
- Status changed from reviewing to readytorelease
Ok, looks good, thanks!
comment:51 Changed 11 years ago by gkronber
- Resolution set to done
- Status changed from readytorelease to closed
r10020: merged r9804:9805, r9808:9809, r9811:9812, r9822, r9824:9825, r9897, r9928, r9938:9941, r9964:9965, r9989, r9991:9992, r9995,r9997, r10004:10015 from trunk into stable branch.
added first implementation to branch with r6122:6128.