使用遗传算法的 rsi 适应度函数

fitness function for rsi using genetic algorithms

此代码使用遗传算法为 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

如果你能展示完整的代码会很有用,但据我所知 'strategy_return' returns 是由 '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)

基本上return是一个数组

'_cumulative_return' return 索引也为 0 = NaN

的列表
 cum_ret_list.insert(0, np.nan)

但是,如果没有完整的代码,就很难解释它的用途。

'fit_evaluation' 有一个参数 'strategy_return' 函数,其中 return 是一个数组,并且将第二个函数应用到这样的数组但没有索引 0.

 strat_cum_ret = _cumulative_return(strat_ret[1::])