Spaces:
Configuration error
Configuration error
File size: 2,346 Bytes
f0a90ee | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | # -*- coding: utf-8 -*-
import streamlit as st
import pandas as pd
import numpy as np
import datetime
import matplotlib.pyplot as plt
from supertrader.config import PROJECT_ID, PHASE1_PROGRESS, PHASE1_DEADLINE, FEATURES
from supertrader.modules.technical import sma_signal
st.set_page_config(page_title="ابر انسان معاملهگر — Ali_5_17", layout="wide")
st.title("🚀 ابر انسان معاملهگر — اتاق فرمان")
st.caption(f"Project ID: {PROJECT_ID}")
# پیشرفت فاز ۱
st.subheader("📊 وضعیت فاز ۱")
progress_val = PHASE1_PROGRESS
st.progress(progress_val / 100.0, text=f"پیشرفت فاز ۱: {progress_val}%")
# شمارش معکوس تا پایان فاز ۱
deadline = datetime.date.fromisoformat(PHASE1_DEADLINE)
days_left = (deadline - datetime.date.today()).days
st.write(f"⏳ روزهای باقیمانده تا پایان فاز ۱: **{max(days_left,0)}** روز")
st.divider()
# داده نمونه و سیگنال SMA
st.subheader("📈 سیگنال نمونه (SMA Cross)")
np.random.seed(42)
n = 200
price = 100 + np.cumsum(np.random.randn(n)) # داده ساختگی
df = pd.DataFrame({"close": price})
sig = sma_signal(df, 10, 20)
fig, ax = plt.subplots()
ax.plot(sig.index, sig['close'])
ax.plot(sig.index, sig['sma_fast'])
ax.plot(sig.index, sig['sma_slow'])
ax.set_title("نمونه سیگنال SMA روی دادهٔ ساختگی")
st.pyplot(fig)
last_sig = sig['signal'].iloc[-1]
sig_text = "خرید" if last_sig == 1 else ("فروش" if last_sig == -1 else "خنثی")
st.info(f"آخرین سیگنال نمونه: **{sig_text}** (فقط دمو)")
st.divider()
# بارگذاری و نمایش گزارشها
st.subheader("🗂️ گزارشها")
uploaded = st.file_uploader("فایل گزارش (TXT یا PDF) را بارگذاری کن", type=["txt","pdf"])
if uploaded is not None:
st.success("گزارش بارگذاری شد ✅")
if uploaded.type == "text/plain":
content = uploaded.read().decode("utf-8", errors="ignore")
st.text_area("متن گزارش", content, height=200)
else:
st.write("فایل PDF بارگذاری شد. (نمایش پیشنمایش در نسخههای بعدی)")
st.caption("نسخهٔ اولیه — آمادهٔ اتصال به حساب دمو در فاز ۲")
|