GO语言实现简单股价计算
平时会买一些股票,然则总有踩坑的时候,这个时候割肉是不可能割的,只能静待时机补仓,那么在补仓的时候经常遇上以下几个问题:
在什么价位补仓?
购入多少股?
购入后持仓成本是多少?
于是简单写了一个脚本,在购买前提前测算一下。
计算公式:
(目标价-预购入价)*x=(持仓价-目标价)*持仓股数
m=x*预购入价*(1+0.02%(交易税率))
package main
import (
"fmt"
"math"
)
/*
亏损时计算达到目票价需要买多少股
x:股数 m:预计投入资金
(目标价-预购入价)*x=(持仓价-目标价)*持仓股数
m=x*预购入价*(1+0.02%(交易税率))
*/
func main() {
for {
buyNum, amount := count()
fmt.Println(fmt.Sprintf("buyNum:%0.2f,amount:%0.2f", buyNum, amount))
}
}
//计算需要投入的资金及购买量
func count() (buyNum float64, amount float64) {
var nowPrice float64 //持仓价
var nowHas int //持仓数量
var buyPrice float64 //预购入价
var hopePrice float64 //目标价
fmt.Println("请输入当前持仓价")
fmt.Scanln(&nowPrice)
fmt.Println("请输入当前持仓数量")
fmt.Scanln(&nowHas)
fmt.Println("请输入预购入价")
fmt.Scanln(&buyPrice)
fmt.Println("请输入目标价")
fmt.Scanln(&hopePrice)
buyNum = math.Ceil((nowPrice-hopePrice)*float64(nowHas)/(hopePrice-buyPrice)/100) * 100
amount = buyNum * buyPrice * 1.00025
return
}
//计算买入后成本价
func getPrice() (priceEnd float64) {
return
}
然后生成一个windows的可执行程序,为了好看弄了个图标(图标网上随便找的,若有侵权即刻联系删除)。
直接运行实例看看效果:
比如这个股票,已经亏损超过24%,最近价格一直在12元左右,基本算是到底了,且最近疫情好转,有利好上升趋势。预估短期内能到13块,那么我们计算投入多少能把成本控制到13块。
经过计算若以12.5(实际可以当天股份波动灵活设置)买入7900股,就可以将成本控制到13元,需要投入9.8W。有这些数据支撑就可以对投资有一个参考价值,然后挂一个买入单,坐等成交。
希望通过本次分享对大家有帮助,早日脱坑!