工厂功能建议/说明

2024-06-02 01:40:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经开始了这个关于熊选项的问题,但是我不确定如何继续工厂功能部分:

a)看跌期权有回报 see image

我必须编写一个python函数来返回回报的值。你知道吗

def bear(S,K):
    if S <= K:
        value = K
    elif K < S and S < 2*K:
        value = 2*K - S
    else:
        value = 0
    return value

下一部分。。。b) 还可以编写一个工厂函数,返回一个变量的熊市期权支付函数,K是固定的

我找不到什么是工厂函数的简单解释,我刚刚开始编写代码,我的笔记还没有提到工厂函数。任何网页链接,提示或解释将不胜感激!你知道吗


Tags: and函数image功能returnifvalue工厂
1条回答
网友
1楼 · 发布于 2024-06-02 01:40:01

他们希望您编写一个返回另一个函数的函数,该函数可用于计算K的固定值bear(S, K)

def bear_for_k(K):
    return lambda S: bear(S, K)

演示:

>>> bear(21, 17)
13
>>> bear_for_k17 = bear_for_k(17)
>>> bear_for_k17(21)
13
>>> bear(112, 81)
50
>>> bear_for_k81 = bear_for_k(81)
>>> bear_for_k81(112)
50

根据评论编辑:

请尝试以下文件:

def bear(S,K):
    if S <= K:
        value = K
    elif K < S and S < 2*K:
        value = 2*K - S
    else:
        value = 0
    return value

def bear_for_k(K):
    return lambda S: bear(S, K)

#test:
print(bear_for_k(17)(21))

这将在Python2和Python3中无误地打印13。你知道吗

相关问题 更多 >