diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/build-linux.bat b/build-linux.bat new file mode 100644 index 0000000..82bdc37 --- /dev/null +++ b/build-linux.bat @@ -0,0 +1,5 @@ +@echo off +set GOOS=linux +set GOARCH=amd64 +set CGO_ENABLED=0 +go build -o gold-linux \ No newline at end of file diff --git a/gold-linux b/gold-linux new file mode 100644 index 0000000..7e8f6dd Binary files /dev/null and b/gold-linux differ diff --git a/main.go b/main.go index b0f863d..7a9ce5a 100644 --- a/main.go +++ b/main.go @@ -888,11 +888,11 @@ func main() { http.FileServer(http.FS(root)).ServeHTTP(w, r) }) - println("Server started at http://localhost:8080") + println("Server started at http://localhost:8844") println("API Endpoints:") println(" /api/fetch?ticker=GC=F&start=2010-01-01&end=2023-12-31&output=train.csv") println(" /api/backtest?file=train.csv") println(" /api/signals?file=train.csv") println("Usage: Set ANTHROPIC_API_KEY environment variable") - http.ListenAndServe(":8080", nil) + http.ListenAndServe(":8844", nil) } diff --git a/web/src/App.vue b/web/src/App.vue index 6d76cff..6f756c2 100644 --- a/web/src/App.vue +++ b/web/src/App.vue @@ -276,9 +276,9 @@ const loadData = async () => { loading.value = true try { const [signalsRes, dataRes, btRes] = await Promise.all([ - fetch(`http://localhost:8080/api/signals?window=${settings.value.rollingWindow}&gsrUpper=${settings.value.gsrUpper}&gsrLower=${settings.value.gsrLower}`), - fetch(`http://localhost:8080/api/data`), - fetch(`http://localhost:8080/api/backtest?window=${settings.value.rollingWindow}&gsrUpper=${settings.value.gsrUpper}&gsrLower=${settings.value.gsrLower}&capital=${settings.value.initialCapital}`) + fetch(`/api/signals?window=${settings.value.rollingWindow}&gsrUpper=${settings.value.gsrUpper}&gsrLower=${settings.value.gsrLower}`), + fetch(`/api/data`), + fetch(`/api/backtest?window=${settings.value.rollingWindow}&gsrUpper=${settings.value.gsrUpper}&gsrLower=${settings.value.gsrLower}&capital=${settings.value.initialCapital}`) ]) signals.value = (await signalsRes.json()).signals || [] marketData.value = (await dataRes.json()).data || [] @@ -292,7 +292,7 @@ const loadData = async () => { const fetchMarketData = async () => { loading.value = true try { - const res = await fetch(`http://localhost:8080/api/fetch?start=${fetchDataForm.value.startDate}&end=${fetchDataForm.value.endDate}`) + const res = await fetch(`/api/fetch?start=${fetchDataForm.value.startDate}&end=${fetchDataForm.value.endDate}`) const data = await res.json() showToast(data.message || data.error, data.message ? 'success' : 'error') loadData() @@ -305,7 +305,7 @@ const fetchMarketData = async () => { const runBacktest = async () => { loading.value = true try { - const res = await fetch(`http://localhost:8080/api/backtest?window=${settings.value.rollingWindow}&gsrUpper=${settings.value.gsrUpper}&gsrLower=${settings.value.gsrLower}&capital=${settings.value.initialCapital}`) + const res = await fetch(`/api/backtest?window=${settings.value.rollingWindow}&gsrUpper=${settings.value.gsrUpper}&gsrLower=${settings.value.gsrLower}&capital=${settings.value.initialCapital}`) backtestResults.value = await res.json() } catch (e) { console.error(e) @@ -322,7 +322,7 @@ const clearData = async () => { showConfirm(locale.value === 'zh' ? '确定要清除所有数据吗?' : 'Are you sure you want to clear all data?', async () => { loading.value = true try { - const res = await fetch(`http://localhost:8080/api/clear`) + const res = await fetch(`/api/clear`) const data = await res.json() showToast(data.message || data.error, data.message ? 'success' : 'error') marketData.value = []