Compare commits

...

5 Commits

Author SHA1 Message Date
9ccfdb4fb1 Update readme to mention vendoring 2025-05-17 08:58:08 -05:00
90f935742e Fix images in readme 2025-05-17 08:39:18 -05:00
2fb44614e9 Try to fix image sources 2025-05-17 08:35:48 -05:00
2face999aa Add images and readme information 2025-05-17 08:33:11 -05:00
9ea79628e6 Change to 0BSD license 2025-05-17 08:33:01 -05:00
5 changed files with 31 additions and 4 deletions

14
LICENSE
View File

@ -1,3 +1,13 @@
Copyright (c) 2023-2024 Luke Wilson. All rights reserved.
Zero-Clause BSD
=============
This software is not available for use, modification, or reproduction (and this is not a comprehensive list of restrictions). The project is only open source so that it can be made available on my resume.
Permission to use, copy, modify, and/or distribute this software for
any purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED “AS IS” AND THE AUTHOR DISCLAIMS ALL
WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE
FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY
DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

View File

@ -1,4 +1,21 @@
# autotrader
Copyright 2023-2024 Luke Wilson. All rights reserved.
The source code is only publicly available to view so that I can present it on my resume.
> [WARNING]: There are still many bugs to be fixed, this software is not ready to be used for live trading. PRs and bug fixes welcome!
>
> If you still feel like importing the library into your project, I highly recommend vendoring it (copying it directly to the folder).
Autotrader is a forex quantitative trading engine I developed in two weeks using Go. The unique backtesting simulations runs a user-designed trading algorithm against historical market data. The simulation accounts for brokerage fees, hedging, leverage, market orders, limit orders, stop orders, and more. Once a reliable strategy has been identified, the user can run the trading algorithm they created on their live brokerage account.
Autotrader inserts layers of abstraction all the way down from the implementation of the trading strategy to the orders and positions maintained by the brokers over their JSON REST APIs. All financial algorithms and data structures used in this project were developed from scratch, including a time series table inspired by the NumPy Python data science library.
The following page is a report generated by Autotrader when backtesting a naive SMA crossover strategy using realtime Forex market data:
![Graph of live trades as executed by the strategy.](images/livetrades-example.jpeg)
![Return on investment of the strategy plotted over time.](images/profit-example.jpeg)
![Profitability graph of the strategy.](images/profitability-example.jpeg)
## License
Zero-clause BSD (0BSD)

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
images/profit-example.jpeg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB