You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets条件计算后如何正确获取负数值结果?

交易日志Short仓位盈亏负号缺失修正方案

问题根源

你当前的公式仅实现了Long/Short的字符串匹配,没有对应适配两类仓位相反的盈亏计算逻辑:

  • Long仓位盈亏计算逻辑:(平仓价 - 开仓价) * 持仓数量
  • Short仓位盈亏计算逻辑:(开仓价 - 平仓价) * 持仓数量,等价于Long仓位计算结果乘以-1
    现有公式对两类仓位使用了完全相同的计算逻辑,才会导致Short场景下负号丢失。

修正方案

电子表格场景(Excel/Google Sheets等)

假设你的表格对应字段列如下:

  • A列:仓位方向,存储Long/Short字符串
  • B列:开仓价
  • C列:平仓价
  • D列:持仓数量
    你可以直接用IF判断调整公式:
=IF(A1="Long", (C1-B1)*D1, (B1-C1)*D1)

如果希望公式更简洁,也可以用符号系数写法:

=(C1-B1)*D1*IF(A1="Long",1,-1)

代入你给出的Short场景数值验证:(204.9-205)*48.7804878*-1 = -4.88,和预期结果完全一致。

Python Pandas 数据处理场景

如果是用代码批量处理日志数据,可以用np.where实现相同逻辑:

import pandas as pd
import numpy as np

df['盈亏'] = np.where(df['仓位方向']=='Long', 
                   (df['平仓价']-df['开仓价'])*df['持仓数量'],
                   (df['开仓价']-df['平仓价'])*df['持仓数量'])

内容的提问来源于stack exchange,提问作者Danish Xavier

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 16:45:01