Manfiest and Strategy data
This commit is contained in:
@@ -3,16 +3,23 @@ use pulse_macros::pwp;
|
|||||||
|
|
||||||
#[pwp]
|
#[pwp]
|
||||||
#[derive(serde::Deserialize, serde::Serialize)]
|
#[derive(serde::Deserialize, serde::Serialize)]
|
||||||
pub struct Strategy {
|
pub struct StrategyManifest {
|
||||||
name: String,
|
name: String,
|
||||||
timeframes: Vec<TimeFrame>,
|
|
||||||
description: String,
|
description: String,
|
||||||
author: String,
|
author: String,
|
||||||
|
version: String,
|
||||||
|
|
||||||
|
timeframes: Vec<TimeFrame>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[pwp]
|
#[pwp]
|
||||||
#[derive(serde::Deserialize, serde::Serialize)]
|
#[derive(serde::Deserialize, serde::Serialize)]
|
||||||
pub struct Risk {
|
pub struct RiskManifest {
|
||||||
name: String,
|
name: String,
|
||||||
|
description: String,
|
||||||
|
author: String,
|
||||||
|
version: String,
|
||||||
|
|
||||||
max_loss: u8,
|
max_loss: u8,
|
||||||
|
cooldown: TimeFrame,
|
||||||
}
|
}
|
||||||
|
|||||||
+20
-11
@@ -1,8 +1,8 @@
|
|||||||
use crate::{
|
use crate::{
|
||||||
PulseWire,
|
PulseWire,
|
||||||
general::{EventLog, MarketTrend, Position, Signal},
|
general::{EventLog, MarketTrend, Position, Signal},
|
||||||
strategy::{Risk, Strategy},
|
strategy::{RiskManifest, StrategyManifest},
|
||||||
units::{Symbol, USD, Volatility},
|
units::{Symbol, TimeFrame, USD, Volatility},
|
||||||
};
|
};
|
||||||
use pulse_macros::pwp;
|
use pulse_macros::pwp;
|
||||||
|
|
||||||
@@ -87,24 +87,33 @@ pub enum InspectItem {
|
|||||||
|
|
||||||
#[pwp]
|
#[pwp]
|
||||||
pub struct Status {
|
pub struct Status {
|
||||||
feed: Feed,
|
feed: Mode,
|
||||||
exchange: String,
|
exchange: String,
|
||||||
dex: String,
|
dex: String,
|
||||||
latency: u16,
|
latency: u16,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[pwp]
|
#[pwp]
|
||||||
pub enum Feed {
|
pub enum Mode {
|
||||||
Connected,
|
Auto,
|
||||||
Disconnected,
|
Manual,
|
||||||
Connecting,
|
|
||||||
Failed,
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[pwp]
|
#[pwp]
|
||||||
pub struct StrategyView {
|
pub enum ItemState {
|
||||||
strategy: Strategy,
|
Running,
|
||||||
risk: Risk,
|
Off,
|
||||||
|
Error,
|
||||||
|
}
|
||||||
|
|
||||||
|
#[pwp]
|
||||||
|
pub struct Strategy {
|
||||||
|
strategy: StrategyManifest,
|
||||||
|
risk: RiskManifest,
|
||||||
|
|
||||||
|
mode: Mode,
|
||||||
|
state: ItemState,
|
||||||
|
cooldown: TimeFrame,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl std::fmt::Display for AlertLevel {
|
impl std::fmt::Display for AlertLevel {
|
||||||
|
|||||||
Reference in New Issue
Block a user