买入:
price1: 买入价格
amount1: 买入数量
unit1: 资金
可得如下等式:
price1 * amount1 = unit1
扣除交易手续费后,剩余数量:
amount2 = amount1 * (1 - 0.2%)
卖出:
price2: 卖出价格
amount2: 卖出数量
unit2: 资金
可等如下不等式:
price2 * amount2 = unit2`
unit2 = unit2` * (1 - 0.2%)
收益:
unit2 - unit1 = unit1 * (price2/price1 * (1 - 0.2)^2 -1)
func main() {
for i := 5000.0; i < 10000; i += 1000.0 {
for j := 0.0; j < 500; j += 50.0 {
var current = i + j
unit.NormalProfit(i, current, 1000.0)
}
}
}
// 收益计算
// price: 买入价 current: 当前价(卖出价) unit: 买入资金
func NormalProfit(price float64, current float64, unit float64) {
var profit = unit * (current/price*math.Pow(1-0.002, 2) - 1)
fmt.Printf("买入 %0.2f, 卖出: %0.2f, 收益: %0.2f", price, current, profit)
fmt.Println()
}
以1000为单位买入
买入价格 5000.00
卖出: 5000.00, 收益: -4.00
卖出: 5050.00, 收益: 5.96
卖出: 5100.00, 收益: 15.92
卖出: 5150.00, 收益: 25.88
卖出: 5200.00, 收益: 35.84
卖出: 5250.00, 收益: 45.80
卖出: 5300.00, 收益: 55.76
卖出: 5350.00, 收益: 65.72
卖出: 5400.00, 收益: 75.68
卖出: 5450.00, 收益: 85.64
买入价格 6000.00
卖出: 6000.00, 收益: -4.00
卖出: 6050.00, 收益: 4.30
卖出: 6100.00, 收益: 12.60
卖出: 6150.00, 收益: 20.90
卖出: 6200.00, 收益: 29.20
卖出: 6250.00, 收益: 37.50
卖出: 6300.00, 收益: 45.80
卖出: 6350.00, 收益: 54.10
卖出: 6400.00, 收益: 62.40
卖出: 6450.00, 收益: 70.70
买入价格 7000.00
卖出: 7000.00, 收益: -4.00
卖出: 7050.00, 收益: 3.12
卖出: 7100.00, 收益: 10.23
卖出: 7150.00, 收益: 17.35
卖出: 7200.00, 收益: 24.46
卖出: 7250.00, 收益: 31.58
卖出: 7300.00, 收益: 38.69
卖出: 7350.00, 收益: 45.80
卖出: 7400.00, 收益: 52.92
卖出: 7450.00, 收益: 60.03
买入价格 8000.00
卖出: 8000.00, 收益: -4.00
卖出: 8050.00, 收益: 2.23
卖出: 8100.00, 收益: 8.45
卖出: 8150.00, 收益: 14.68
卖出: 8200.00, 收益: 20.90
卖出: 8250.00, 收益: 27.13
卖出: 8300.00, 收益: 33.35
卖出: 8350.00, 收益: 39.58
卖出: 8400.00, 收益: 45.80
卖出: 8450.00, 收益: 52.03
简单的可见看见:
1. 买入即亏损,需要你上涨50左右才能赚够你的手续费
2. 较长线的交易,更具有优势。比如涨200比涨了两次100具有更好的收益
说明:
1. 手续费使用的比较常见的手续费,对于不同的交易市场有细微的差别。比如Okex的用户等级不同,手续费也不一样。