Custom Java system, Plus self intro
Posted: Thu Jul 14, 2005 9:08 pm
I'm a programmer by career and a trader by habit. I have spent my free time over the last 2 years writing a custom back testing/trading program in Java from the ground up. There is still lots of work to be done on the program, but I have it to the point where I can build studies/setups and back test them. I’m interested in joining your discussions and maybe sharing code among the other Java coders.
Here is a description of my system.
Multi threaded none blocking
Real time data from Esignal and Interactive brokers
Historical database
Fuzzy matching system
Wave parsing and generation system
Several custom studies (rsi, macd, bands, pivots…)
Each main component and trading system is started under its own thread to prevent blocking and keeping the system running smoothly. The system is mostly event driven with many services available for subscription. For example, if a study uses 1 minute ER2 data, it will implement the interface BarListener and subscribe to that service. Tick data can be received by implementing TickListener and subscribing to that service. If a study is to be notified that a new high of the day is made, then the study implements the generic EventListener interface and subscribes to the service. Setups are generally created by grouping active studies that can achieve a true(Boolean) state, when all studies are a true then the setup is triggered and a trade is made. Other special studies can be used to set and adjust the trades stop and exit prices or exit at a certain time or market state. I'll detail more about the system if anyone is interested.
Most of the system I have tested are complete junk, but a few of them have achieved what I believe is a tradable state. I’m currently trading one system after it performed as expected over a 6 month forward test. I expect it to blow out any day now that real money is on the line. Just kidding… So far so good J
Right now I consider myself sort of a hack working on homebrew systems, but I would like to get real serious about it.
What kind of performance are people looking to get out of their systems.
How many here are doing homebrew systems in Java
David
Here is a description of my system.
Multi threaded none blocking
Real time data from Esignal and Interactive brokers
Historical database
Fuzzy matching system
Wave parsing and generation system
Several custom studies (rsi, macd, bands, pivots…)
Each main component and trading system is started under its own thread to prevent blocking and keeping the system running smoothly. The system is mostly event driven with many services available for subscription. For example, if a study uses 1 minute ER2 data, it will implement the interface BarListener and subscribe to that service. Tick data can be received by implementing TickListener and subscribing to that service. If a study is to be notified that a new high of the day is made, then the study implements the generic EventListener interface and subscribes to the service. Setups are generally created by grouping active studies that can achieve a true(Boolean) state, when all studies are a true then the setup is triggered and a trade is made. Other special studies can be used to set and adjust the trades stop and exit prices or exit at a certain time or market state. I'll detail more about the system if anyone is interested.
Most of the system I have tested are complete junk, but a few of them have achieved what I believe is a tradable state. I’m currently trading one system after it performed as expected over a 6 month forward test. I expect it to blow out any day now that real money is on the line. Just kidding… So far so good J
Right now I consider myself sort of a hack working on homebrew systems, but I would like to get real serious about it.
What kind of performance are people looking to get out of their systems.
How many here are doing homebrew systems in Java
David