【问题标题】:fitness function for rsi using genetic algorithms使用遗传算法的 rsi 适应度函数
【发布时间】:2021-01-24 08:23:21
【问题描述】:

此代码正在使用遗传算法为 rsi 指标实现适应度函数,但我不知道每个函数的输出是什么

def strategy_return(trading_signal, asset_return):
    strat_ret = np.array(trading_signal[0:-1]) * np.array(asset_return[1::])
    strat_ret = np.insert(strat_ret, 0, np.nan)
    return strat_ret

def _cumulative_return(ret):
    cum_ret_list = [ret[0]]
    n = ret.shape[0]
    for i in range(1, n):
        cum_ret = (1 + ret[i]) * (1 + cum_ret_list[-1]) - 1
        cum_ret_list.append(cum_ret)
    cum_ret_list.insert(0, np.nan)
    return cum_ret_list

def fit_evaluation(strategy_return):
    strat_cum_ret = _cumulative_return(strat_ret[1::])
    return strat_cum_ret

【问题讨论】:

    标签: python algorithm optimization parameters genetic


    【解决方案1】:

    如果你能显示完整的代码会很有用,但据我所知,“strategy_return”返回一个由“trading_signal”和数组“asset_return”之间的乘积形成的数组(没有索引0)。

    strat_ret = np.array(trading_signal[0:-1]) * np.array(asset_return[1::])
    

    然后将索引 0 设置为 NaN。

    strat_ret = np.insert(strat_ret, 0, np.nan)
    

    基本上返回一个数组

    '_cumulative_return' 返回一个索引为 0 = NaN 的列表

     cum_ret_list.insert(0, np.nan)
    

    但同样,没有完整的代码很难解释它的用途。

    'fit_evaluation' 有一个参数 'strategy_return' 函数,它返回一个数组,并使用这样的数组但没有索引 0 应用第二个函数。

     strat_cum_ret = _cumulative_return(strat_ret[1::])
    

    【讨论】:

    • 这很有帮助,这就是我需要知道的一切,非常感谢
    猜你喜欢
    • 2020-05-12
    • 2023-02-20
    • 2011-10-07
    • 2011-12-21
    • 2017-09-26
    • 2011-04-07
    • 2023-03-15
    • 2018-04-10
    • 2014-09-11
    相关资源
    最近更新 更多