程序员的量化交易之路(20)--Cointrader之Assert实体(8)

转载需说明出处:http://blog.csdn.net/minimicall, http://cloudtrade.top

任何可交易的都可以称之为Assert,资产。其类代码如下:

package org.cryptocoinpartners.schema;

import javax.persistence.Basic;
import javax.persistence.Cacheable;
import javax.persistence.Entity;
import javax.persistence.Transient;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * Represents anything valuable and tradable, like currency or stock
 *任何有价值的并且可交易的物体,比如现金、股票
 * @author Tim Olson
 */
@Entity //实体,说明在数据库中会建立相应的表格。由于没有使用name参数,说明类名就是表明。
@Cacheable //可缓存
public abstract class Asset extends EntityBase {

    public static Asset forSymbol(String symbol) {
        // only Currency is supported
        return Currency.forSymbol(symbol);
    }

    @Basic(optional = false)
    public String getSymbol() {
        return symbol;
    }

    @Basic(optional = false)
    public double getBasis() {
        return basis;
    }

    @Transient
    public int getScale() {

        int length = (int) (Math.log10(Math.round(1 / basis)));
        return length;
    }

    @Override
    public String toString() {
        return symbol;
    }

    protected Asset(String symbol, double basis) {
        this.symbol = symbol;
        this.basis = basis;
    }

    // JPA
    protected Asset() {
    }

    protected void setSymbol(String symbol) {
        this.symbol = symbol;
    }

    protected void setBasis(double basis) {
        this.basis = basis;
    }

    private String symbol;//符号
    private double basis;//值

    private static Logger log = LoggerFactory.getLogger(Asset.class);
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值