aboutsummaryrefslogtreecommitdiff
path: root/backend/internal/analyzer/analyzer.go
diff options
context:
space:
mode:
authorGravatar Anshul Gupta <ansg191@anshulg.com> 2024-08-11 13:15:50 -0700
committerGravatar Anshul Gupta <ansg191@anshulg.com> 2024-08-11 13:15:50 -0700
commit6a3c21fb0b1c126849f2bbff494403bbe901448e (patch)
tree5d7805524357c2c8a9819c39d2051a4e3633a1d5 /backend/internal/analyzer/analyzer.go
parent29c6040a51616e9e4cf6c70ee16391b2a3b238c9 (diff)
parentf34b92ded11b07f78575ac62c260a380c468e5ea (diff)
downloadibd-trader-6a3c21fb0b1c126849f2bbff494403bbe901448e.tar.gz
ibd-trader-6a3c21fb0b1c126849f2bbff494403bbe901448e.tar.zst
ibd-trader-6a3c21fb0b1c126849f2bbff494403bbe901448e.zip
Merge remote-tracking branch 'backend/main'
Diffstat (limited to 'backend/internal/analyzer/analyzer.go')
-rw-r--r--backend/internal/analyzer/analyzer.go32
1 files changed, 32 insertions, 0 deletions
diff --git a/backend/internal/analyzer/analyzer.go b/backend/internal/analyzer/analyzer.go
new file mode 100644
index 0000000..c055647
--- /dev/null
+++ b/backend/internal/analyzer/analyzer.go
@@ -0,0 +1,32 @@
+package analyzer
+
+import (
+ "context"
+
+ "github.com/Rhymond/go-money"
+)
+
+type Analyzer interface {
+ Analyze(
+ ctx context.Context,
+ symbol string,
+ price *money.Money,
+ rawAnalysis string,
+ ) (*Analysis, error)
+}
+
+type ChartAction string
+
+const (
+ Buy ChartAction = "buy"
+ Sell ChartAction = "sell"
+ Hold ChartAction = "hold"
+ Unknown ChartAction = "unknown"
+)
+
+type Analysis struct {
+ Action ChartAction
+ Price *money.Money
+ Reason string
+ Confidence uint8
+}