utils.risk_to_qty() 函数计算了 fee_rate 两次
def risk_to_qty(capital: float, risk_per_capital: float, entry_price: float, stop_loss_price: float, precision: int = 8, fee_rate: float = 0) -> float: """ a risk management tool to quickly get the qty based on risk percentage :param capital :param risk_per_capital :param entry_price :param stop_loss_price :param precision :param fee_rate :return: float def risk_to_size(capital_size: float, risk_percentage: float, risk_per_qty: float, entry_price: float) -> float: """ calculates the size of the position based on the amount of risk percentage you're willing to take example: round(risk_to_size(10000, 1, 0.7, 8.6)) == 1229 :param capital_size :param risk_percentage :param risk_per_qty :param entry_price :return: float def size_to_qty(position_size: float, entry_price: float, precision: int = 3, fee_rate: float = 0) -> float: """ converts position-size to quantity example: requesting $100 at the entry_price of $50 would return 2 :param position_size: float :param entry_price: float :param precision: int :param fee_rate: :return: float if fee_rate != 0: position_size *= 1 - fee_rate * 3 return jh.floor_with_precision(position_size / entry_price, precision)
内容来源: jesse-ai/jesse