| | |
| | | import lombok.Data; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | /** |
| | | * 用户跟随交易员详情表 |
| | | */ |
| | |
| | | @TableName("T_TRADER_FOLLOW_USER") |
| | | @Slf4j |
| | | public class TraderFollowUser extends BaseEntity { |
| | | |
| | | public static final String FOLLOW_TYPE_FIXED = "1"; |
| | | |
| | | public static final String STATE_FOLLOWING = "1"; |
| | | |
| | | public static final String STATE_STOPPED = "2"; |
| | | |
| | | public static final String STATE_STOPPING = "3"; |
| | | |
| | | public static final String STATE_FAILED = "4"; |
| | | |
| | | private static final long serialVersionUID = -1617033543659508052L; |
| | | |
| | |
| | | private String symbol; |
| | | |
| | | /** |
| | | * 跟单固定张数/固定比例---选择 1,固定张数,2,固定比例 |
| | | * 跟单方式。当前仅支持固定币数量模式 |
| | | */ |
| | | @TableField("FOLLOW_TYPE") |
| | | private String followType; |
| | | private String followType = FOLLOW_TYPE_FIXED; |
| | | /** |
| | | * 状态 是否还在跟随状态 1,跟随,2,取消跟随 |
| | | * 状态 1-跟随中 2-已停止 3-停止中 |
| | | */ |
| | | @TableField("STATE") |
| | | private String state; |
| | | private String state = STATE_FOLLOWING; |
| | | |
| | | /** |
| | | * 跟单张数或比例---具体值 |
| | | * 最小跟单币数量 |
| | | */ |
| | | @TableField("VOLUME") |
| | | private double volume; |
| | | /** |
| | | * 最大持仓张数 |
| | | * 最大跟单币数量 |
| | | */ |
| | | @TableField("VOLUME_MAX") |
| | | private double volumeMax; |
| | | |
| | | /** |
| | | * 跟随者自定义杠杆倍数(需已执行 docs/db/V5__follow_leverage_support.sql 增加 LEVER_RATE 列) |
| | | */ |
| | | @TableField("LEVER_RATE") |
| | | private double leverRate = 1D; |
| | | |
| | | /** |
| | | * 跟单投入币数量(新模型核心字段) |
| | | */ |
| | | @TableField("INVEST_AMOUNT") |
| | | private BigDecimal investAmount = BigDecimal.ZERO; |
| | | |
| | | /** |
| | | * 累计跟单收益 PROFIT |
| | |
| | | @TableField("DAYS_SETTING") |
| | | private String daysSetting; |
| | | |
| | | /** |
| | | * 请求停止跟单时间戳(秒) |
| | | */ |
| | | @TableField("STOP_REQUEST_TIME") |
| | | private Long stopRequestTime; |
| | | |
| | | /** |
| | | * 停止跟单完成时间戳(秒) |
| | | */ |
| | | @TableField("STOP_FINISH_TIME") |
| | | private Long stopFinishTime; |
| | | |
| | | /** |
| | | * 月固定跟单费已缴纳到的自然月 yyyy-MM(同月内停止后再跟单不重复扣) |
| | | */ |
| | | @TableField("MONTHLY_FEE_PAID_PERIOD") |
| | | private String monthlyFeePaidPeriod; |
| | | |
| | | /** |
| | | * 最近一次跟单失败原因(如余额不足) |
| | | */ |
| | | @TableField("FAIL_REASON") |
| | | private String failReason; |
| | | |
| | | /** |
| | | * 最近一次跟单失败时间戳(秒) |
| | | */ |
| | | @TableField("LAST_FAIL_TIME") |
| | | private Long lastFailTime; |
| | | |
| | | @TableField(exist = false) |
| | | private String userCode; |
| | | |
| | | @TableField(exist = false) |
| | | private String traderUserCode; |
| | | |
| | | @TableField(exist = false) |
| | | private String traderName; |
| | | |
| | | @TableField(exist = false) |
| | | private Long openOrderCount; |
| | | |
| | | @TableField(exist = false) |
| | | private Double openOrderVolume; |
| | | |
| | | @TableField(exist = false) |
| | | private Double openOrderProfit; |
| | | |
| | | public boolean isFollowing() { |
| | | return STATE_FOLLOWING.equals(this.state); |
| | | } |
| | | |
| | | public boolean isStopping() { |
| | | return STATE_STOPPING.equals(this.state); |
| | | } |
| | | } |