Разговор с искусственным интеллектом (ИИ) о форексе. - страница 118

 
Maxim Dmitrievsky #:
Теперь, чтобы получить адекватные оценки ошибок, нужно остационарить ряд. При наличии автокорреляции ошибки занижаются.

Не, мотивация возникает после почти реала, хотя бы на тесте в терминале, что то не то, а тестить в первоначальной моделе дешевле, а ошибки лучше на начале пути оценивать, а не после переноса в почти реал)))

 
Maxim Dmitrievsky #:
Теперь, чтобы получить адекватные оценки ошибок, нужно остационарить ряд. При наличии автокорреляции ошибки занижаются.

ChatGPT:
Для остационаривания ряда можно использовать несколько методов, в том числе дифференцирование, применение скользящего среднего или экспоненциального сглаживания. 

При тестировании для остационаривания ряда я выбрала скользящую среднюю с периодом 15, которая полностью перекрывает окно обучения модели с периодом 12. Если я правильно понимаю, данные в окне "учителя" ​​полностью стационарны.

USDX_2023.04.20_Data_1y.txt
ADF Statistic: -8.653242
p-value: 0.000000
Если p-value меньше 0.05, то ряд можно считать стационарным.
    seq_series = pd.Series(seq)


    # вычисление скользящего среднего
    seq_moving_avg_window_size = 15
    seq_moving_avg = seq_series.rolling(seq_moving_avg_window_size).mean().dropna().round(0)

    # проверка на стационарность
    from statsmodels.tsa.stattools import adfuller

    result = adfuller(seq_moving_avg)
    print('ADF Statistic: %f' % result[0])
    print('p-value: %f' % result[1])
    print('Если p-value меньше 0.05, то ряд можно считать стационарным.')

    # Convert the list to a numpy array
    seq = np.array(seq_moving_avg)


Стационарный ряд — это временной ряд, статистические свойства которого не меняются во времени. График стационарного ряда выглядит как ломаная линия, которая хаотично «наматывается» на горизонтальную прямую, оставаясь на среднем расстоянии от нее.


были:

стали:


были:

C:\Users\user\PycharmProjects\pythonProject_3\venv\Scripts\python.exe C:\Users\user\PycharmProjects\pythonProject_3\venv\main_naive_approach.py 

audcad - Naive MSE=6.44698; MAE=1.7540; MPL=0.8770; RMSE=2.5391; RRMSE=0.3198; D2AE=0.7235; D2P=0.7235; EVS=0.8977; R2=0.8977 
audcad - MachL MSE=0.36198; MAE=0.3303; MPL=0.1652; RMSE=0.6016; RRMSE=0.0758; D2AE=0.9479; D2P=0.9479; EVS=0.9943; R2=0.9943 

audchf - Naive MSE=6.40139; MAE=1.7502; MPL=0.8751; RMSE=2.5301; RRMSE=0.3129; D2AE=0.7286; D2P=0.7286; EVS=0.9021; R2=0.9021 
audchf - MachL MSE=0.35533; MAE=0.3246; MPL=0.1623; RMSE=0.5961; RRMSE=0.0737; D2AE=0.9497; D2P=0.9497; EVS=0.9946; R2=0.9946 

audjpy - Naive MSE=6.47104; MAE=1.7515; MPL=0.8758; RMSE=2.5438; RRMSE=0.2882; D2AE=0.7505; D2P=0.7505; EVS=0.9169; R2=0.9169 
audjpy - MachL MSE=0.37385; MAE=0.3340; MPL=0.1670; RMSE=0.6114; RRMSE=0.0693; D2AE=0.9524; D2P=0.9524; EVS=0.9952; R2=0.9952 

audnzd - Naive MSE=6.49383; MAE=1.7832; MPL=0.8916; RMSE=2.5483; RRMSE=0.2983; D2AE=0.7392; D2P=0.7392; EVS=0.9110; R2=0.9110 
audnzd - MachL MSE=0.36689; MAE=0.3371; MPL=0.1686; RMSE=0.6057; RRMSE=0.0709; D2AE=0.9507; D2P=0.9507; EVS=0.9950; R2=0.9950 

audusd - Naive MSE=6.79519; MAE=1.7642; MPL=0.8821; RMSE=2.6068; RRMSE=0.2969; D2AE=0.7506; D2P=0.7506; EVS=0.9119; R2=0.9119 
audusd - MachL MSE=0.39902; MAE=0.3313; MPL=0.1656; RMSE=0.6317; RRMSE=0.0719; D2AE=0.9532; D2P=0.9532; EVS=0.9948; R2=0.9948 

chfjpy - Naive MSE=6.64451; MAE=1.7262; MPL=0.8631; RMSE=2.5777; RRMSE=0.2780; D2AE=0.7685; D2P=0.7685; EVS=0.9227; R2=0.9227 
chfjpy - MachL MSE=0.47879; MAE=0.3512; MPL=0.1756; RMSE=0.6919; RRMSE=0.0746; D2AE=0.9529; D2P=0.9529; EVS=0.9945; R2=0.9944 

cnhaud - Naive MSE=6.49699; MAE=1.7607; MPL=0.8803; RMSE=2.5489; RRMSE=0.3104; D2AE=0.7315; D2P=0.7315; EVS=0.9036; R2=0.9036 
cnhaud - MachL MSE=0.36815; MAE=0.3343; MPL=0.1671; RMSE=0.6068; RRMSE=0.0739; D2AE=0.9490; D2P=0.9490; EVS=0.9945; R2=0.9945 

euraud - Naive MSE=6.49509; MAE=1.7547; MPL=0.8773; RMSE=2.5485; RRMSE=0.3141; D2AE=0.7269; D2P=0.7269; EVS=0.9013; R2=0.9013 
euraud - MachL MSE=0.38794; MAE=0.3265; MPL=0.1633; RMSE=0.6228; RRMSE=0.0768; D2AE=0.9492; D2P=0.9492; EVS=0.9941; R2=0.9941 

eurcad - Naive MSE=6.77683; MAE=1.7499; MPL=0.8750; RMSE=2.6032; RRMSE=0.3112; D2AE=0.7432; D2P=0.7432; EVS=0.9032; R2=0.9032 
eurcad - MachL MSE=0.34742; MAE=0.3164; MPL=0.1582; RMSE=0.5894; RRMSE=0.0705; D2AE=0.9536; D2P=0.9536; EVS=0.9950; R2=0.9950 

eurchf - Naive MSE=7.18772; MAE=1.7806; MPL=0.8903; RMSE=2.6810; RRMSE=0.3196; D2AE=0.7341; D2P=0.7341; EVS=0.8978; R2=0.8978 
eurchf - MachL MSE=0.38082; MAE=0.3267; MPL=0.1633; RMSE=0.6171; RRMSE=0.0736; D2AE=0.9512; D2P=0.9512; EVS=0.9946; R2=0.9946 

eurgbp - Naive MSE=7.04274; MAE=1.7601; MPL=0.8800; RMSE=2.6538; RRMSE=0.3133; D2AE=0.7400; D2P=0.7400; EVS=0.9019; R2=0.9019 
eurgbp - MachL MSE=0.38509; MAE=0.3202; MPL=0.1601; RMSE=0.6206; RRMSE=0.0732; D2AE=0.9527; D2P=0.9527; EVS=0.9946; R2=0.9946 

eurjpy - Naive MSE=6.78506; MAE=1.7610; MPL=0.8805; RMSE=2.6048; RRMSE=0.2765; D2AE=0.7663; D2P=0.7663; EVS=0.9235; R2=0.9235 
eurjpy - MachL MSE=0.44777; MAE=0.3553; MPL=0.1777; RMSE=0.6692; RRMSE=0.0710; D2AE=0.9528; D2P=0.9528; EVS=0.9950; R2=0.9950 

eursek - Naive MSE=6.85913; MAE=1.7664; MPL=0.8832; RMSE=2.6190; RRMSE=0.3040; D2AE=0.7459; D2P=0.7459; EVS=0.9076; R2=0.9076 
eursek - MachL MSE=0.37623; MAE=0.3234; MPL=0.1617; RMSE=0.6134; RRMSE=0.0712; D2AE=0.9535; D2P=0.9535; EVS=0.9949; R2=0.9949 

eurusd - Naive MSE=7.02501; MAE=1.7436; MPL=0.8718; RMSE=2.6505; RRMSE=0.2907; D2AE=0.7602; D2P=0.7602; EVS=0.9155; R2=0.9155 
eurusd - MachL MSE=0.36768; MAE=0.3275; MPL=0.1637; RMSE=0.6064; RRMSE=0.0665; D2AE=0.9550; D2P=0.9550; EVS=0.9956; R2=0.9956 

gbpaud - Naive MSE=6.32669; MAE=1.7566; MPL=0.8783; RMSE=2.5153; RRMSE=0.3049; D2AE=0.7312; D2P=0.7312; EVS=0.9071; R2=0.9071 
gbpaud - MachL MSE=0.36847; MAE=0.3267; MPL=0.1633; RMSE=0.6070; RRMSE=0.0736; D2AE=0.9500; D2P=0.9500; EVS=0.9946; R2=0.9946 

gbpchf - Naive MSE=6.81228; MAE=1.7499; MPL=0.8750; RMSE=2.6100; RRMSE=0.3102; D2AE=0.7388; D2P=0.7388; EVS=0.9038; R2=0.9038 
gbpchf - MachL MSE=0.36736; MAE=0.3154; MPL=0.1577; RMSE=0.6061; RRMSE=0.0720; D2AE=0.9529; D2P=0.9529; EVS=0.9948; R2=0.9948 

gbpeur - Naive MSE=7.01108; MAE=1.7506; MPL=0.8753; RMSE=2.6478; RRMSE=0.3121; D2AE=0.7401; D2P=0.7401; EVS=0.9026; R2=0.9026 
gbpeur - MachL MSE=0.40614; MAE=0.3416; MPL=0.1708; RMSE=0.6373; RRMSE=0.0751; D2AE=0.9493; D2P=0.9493; EVS=0.9944; R2=0.9944 

gbpjpy - Naive MSE=6.61285; MAE=1.7230; MPL=0.8615; RMSE=2.5715; RRMSE=0.2793; D2AE=0.7633; D2P=0.7633; EVS=0.9220; R2=0.9220 
gbpjpy - MachL MSE=0.41754; MAE=0.3463; MPL=0.1732; RMSE=0.6462; RRMSE=0.0702; D2AE=0.9524; D2P=0.9524; EVS=0.9951; R2=0.9951 

gbpusd - Naive MSE=7.06299; MAE=1.7499; MPL=0.8750; RMSE=2.6576; RRMSE=0.2913; D2AE=0.7596; D2P=0.7596; EVS=0.9152; R2=0.9152 
gbpusd - MachL MSE=0.40915; MAE=0.3389; MPL=0.1694; RMSE=0.6396; RRMSE=0.0701; D2AE=0.9535; D2P=0.9535; EVS=0.9951; R2=0.9951 

nzdusd - Naive MSE=6.83318; MAE=1.7686; MPL=0.8843; RMSE=2.6140; RRMSE=0.3102; D2AE=0.7402; D2P=0.7402; EVS=0.9038; R2=0.9038 
nzdusd - MachL MSE=0.36467; MAE=0.3229; MPL=0.1614; RMSE=0.6039; RRMSE=0.0717; D2AE=0.9526; D2P=0.9526; EVS=0.9949; R2=0.9949 

usdcad - Naive MSE=6.76100; MAE=1.7490; MPL=0.8745; RMSE=2.6002; RRMSE=0.2901; D2AE=0.7577; D2P=0.7577; EVS=0.9158; R2=0.9158 
usdcad - MachL MSE=0.37702; MAE=0.3289; MPL=0.1645; RMSE=0.6140; RRMSE=0.0685; D2AE=0.9544; D2P=0.9544; EVS=0.9953; R2=0.9953 

usdchf - Naive MSE=7.13327; MAE=1.7705; MPL=0.8852; RMSE=2.6708; RRMSE=0.2875; D2AE=0.7681; D2P=0.7681; EVS=0.9174; R2=0.9174 
usdchf - MachL MSE=0.39965; MAE=0.3386; MPL=0.1693; RMSE=0.6322; RRMSE=0.0680; D2AE=0.9557; D2P=0.9557; EVS=0.9954; R2=0.9954 

usdcnh - Naive MSE=6.70212; MAE=1.7670; MPL=0.8835; RMSE=2.5888; RRMSE=0.2907; D2AE=0.7449; D2P=0.7449; EVS=0.9155; R2=0.9155 
usdcnh - MachL MSE=0.44682; MAE=0.3560; MPL=0.1780; RMSE=0.6684; RRMSE=0.0751; D2AE=0.9486; D2P=0.9486; EVS=0.9944; R2=0.9944 

usdjpy - Naive MSE=7.26369; MAE=1.7287; MPL=0.8644; RMSE=2.6951; RRMSE=0.2704; D2AE=0.7786; D2P=0.7786; EVS=0.9269; R2=0.9269 
usdjpy - MachL MSE=0.74881; MAE=0.4016; MPL=0.2008; RMSE=0.8653; RRMSE=0.0868; D2AE=0.9486; D2P=0.9486; EVS=0.9925; R2=0.9925 

usdsek - Naive MSE=6.91548; MAE=1.7515; MPL=0.8758; RMSE=2.6297; RRMSE=0.2866; D2AE=0.7608; D2P=0.7608; EVS=0.9178; R2=0.9178 
usdsek - MachL MSE=0.42608; MAE=0.3523; MPL=0.1762; RMSE=0.6528; RRMSE=0.0712; D2AE=0.9519; D2P=0.9519; EVS=0.9949; R2=0.9949 

usdx - Naive MSE=6.82748; MAE=1.7328; MPL=0.8664; RMSE=2.6129; RRMSE=0.2854; D2AE=0.7628; D2P=0.7628; EVS=0.9185; R2=0.9185 
usdx - MachL MSE=0.40377; MAE=0.3357; MPL=0.1679; RMSE=0.6354; RRMSE=0.0694; D2AE=0.9540; D2P=0.9540; EVS=0.9952; R2=0.9952 

year: 16 / input data len(6318) / forecast len(6318)

Process finished with exit code 0


стали:

C:\Users\user\PycharmProjects\pythonProject_3\venv\Scripts\python.exe C:\Users\user\PycharmProjects\pythonProject_3\venv\main_naive_approach.py 

audcad - Naive MSE=0.46367; MAE=0.4319; MPL=0.2160; RMSE=0.6809; RRMSE=0.0959; D2AE=0.9248; D2P=0.9248; EVS=0.9908; R2=0.9908 
audcad - MachL MSE=3.09565; MAE=0.6122; MPL=0.3061; RMSE=1.7594; RRMSE=0.2478; D2AE=0.8934; D2P=0.8934; EVS=0.9414; R2=0.9386 

audchf - Naive MSE=0.45051; MAE=0.4204; MPL=0.2102; RMSE=0.6712; RRMSE=0.0922; D2AE=0.9277; D2P=0.9277; EVS=0.9915; R2=0.9915 
audchf - MachL MSE=1.92370; MAE=0.4227; MPL=0.2114; RMSE=1.3870; RRMSE=0.1905; D2AE=0.9272; D2P=0.9272; EVS=0.9643; R2=0.9637 

audjpy - Naive MSE=0.46177; MAE=0.4272; MPL=0.2136; RMSE=0.6795; RRMSE=0.0843; D2AE=0.9339; D2P=0.9339; EVS=0.9929; R2=0.9929 
audjpy - MachL MSE=2.56948; MAE=0.5625; MPL=0.2812; RMSE=1.6030; RRMSE=0.1988; D2AE=0.9129; D2P=0.9129; EVS=0.9606; R2=0.9605 

audnzd - Naive MSE=0.42655; MAE=0.4050; MPL=0.2025; RMSE=0.6531; RRMSE=0.0832; D2AE=0.9361; D2P=0.9361; EVS=0.9931; R2=0.9931 
audnzd - MachL MSE=2.52998; MAE=0.5715; MPL=0.2858; RMSE=1.5906; RRMSE=0.2027; D2AE=0.9098; D2P=0.9098; EVS=0.9591; R2=0.9589 

audusd - Naive MSE=0.49635; MAE=0.4503; MPL=0.2252; RMSE=0.7045; RRMSE=0.0886; D2AE=0.9299; D2P=0.9299; EVS=0.9922; R2=0.9922 
audusd - MachL MSE=3.15339; MAE=0.6172; MPL=0.3086; RMSE=1.7758; RRMSE=0.2233; D2AE=0.9039; D2P=0.9039; EVS=0.9534; R2=0.9501 

chfjpy - Naive MSE=0.46494; MAE=0.4266; MPL=0.2133; RMSE=0.6819; RRMSE=0.0798; D2AE=0.9380; D2P=0.9380; EVS=0.9936; R2=0.9936 
chfjpy - MachL MSE=2.51777; MAE=0.4302; MPL=0.2151; RMSE=1.5867; RRMSE=0.1856; D2AE=0.9375; D2P=0.9375; EVS=0.9656; R2=0.9655 

cnhaud - Naive MSE=0.46003; MAE=0.4261; MPL=0.2130; RMSE=0.6783; RRMSE=0.0917; D2AE=0.9276; D2P=0.9276; EVS=0.9916; R2=0.9916 
cnhaud - MachL MSE=1.82820; MAE=0.4351; MPL=0.2176; RMSE=1.3521; RRMSE=0.1829; D2AE=0.9261; D2P=0.9261; EVS=0.9666; R2=0.9666 

euraud - Naive MSE=0.46399; MAE=0.4348; MPL=0.2174; RMSE=0.6812; RRMSE=0.0935; D2AE=0.9245; D2P=0.9245; EVS=0.9913; R2=0.9913 
euraud - MachL MSE=2.39324; MAE=0.5738; MPL=0.2869; RMSE=1.5470; RRMSE=0.2124; D2AE=0.9004; D2P=0.9004; EVS=0.9554; R2=0.9549 

eurcad - Naive MSE=0.45891; MAE=0.4266; MPL=0.2133; RMSE=0.6774; RRMSE=0.0897; D2AE=0.9310; D2P=0.9310; EVS=0.9920; R2=0.9920 
eurcad - MachL MSE=1.71256; MAE=0.4667; MPL=0.2333; RMSE=1.3086; RRMSE=0.1732; D2AE=0.9245; D2P=0.9245; EVS=0.9700; R2=0.9700 

eurchf - Naive MSE=0.41609; MAE=0.3904; MPL=0.1952; RMSE=0.6450; RRMSE=0.0845; D2AE=0.9365; D2P=0.9365; EVS=0.9929; R2=0.9929 
eurchf - MachL MSE=2.71875; MAE=0.5947; MPL=0.2974; RMSE=1.6489; RRMSE=0.2160; D2AE=0.9033; D2P=0.9033; EVS=0.9538; R2=0.9534 

eurgbp - Naive MSE=0.45527; MAE=0.4210; MPL=0.2105; RMSE=0.6747; RRMSE=0.0881; D2AE=0.9315; D2P=0.9315; EVS=0.9922; R2=0.9922 
eurgbp - MachL MSE=2.32995; MAE=0.5517; MPL=0.2759; RMSE=1.5264; RRMSE=0.1993; D2AE=0.9102; D2P=0.9102; EVS=0.9605; R2=0.9603 

eurjpy - Naive MSE=0.47795; MAE=0.4389; MPL=0.2195; RMSE=0.6913; RRMSE=0.0797; D2AE=0.9371; D2P=0.9371; EVS=0.9937; R2=0.9937 
eurjpy - MachL MSE=3.01126; MAE=0.6071; MPL=0.3035; RMSE=1.7353; RRMSE=0.2000; D2AE=0.9130; D2P=0.9130; EVS=0.9604; R2=0.9600 

eursek - Naive MSE=0.42132; MAE=0.4016; MPL=0.2008; RMSE=0.6491; RRMSE=0.0819; D2AE=0.9381; D2P=0.9381; EVS=0.9933; R2=0.9933 
eursek - MachL MSE=2.17830; MAE=0.4886; MPL=0.2443; RMSE=1.4759; RRMSE=0.1862; D2AE=0.9248; D2P=0.9248; EVS=0.9653; R2=0.9653 

eurusd - Naive MSE=0.48112; MAE=0.4415; MPL=0.2207; RMSE=0.6936; RRMSE=0.0832; D2AE=0.9335; D2P=0.9335; EVS=0.9931; R2=0.9931 
eurusd - MachL MSE=3.30298; MAE=0.6850; MPL=0.3425; RMSE=1.8174; RRMSE=0.2180; D2AE=0.8969; D2P=0.8969; EVS=0.9532; R2=0.9525 

gbpaud - Naive MSE=0.44289; MAE=0.4143; MPL=0.2072; RMSE=0.6655; RRMSE=0.0891; D2AE=0.9301; D2P=0.9301; EVS=0.9921; R2=0.9921 
gbpaud - MachL MSE=2.26459; MAE=0.4661; MPL=0.2330; RMSE=1.5049; RRMSE=0.2015; D2AE=0.9214; D2P=0.9214; EVS=0.9603; R2=0.9594 

gbpchf - Naive MSE=0.43972; MAE=0.4086; MPL=0.2043; RMSE=0.6631; RRMSE=0.0869; D2AE=0.9334; D2P=0.9334; EVS=0.9924; R2=0.9924 
gbpchf - MachL MSE=2.56155; MAE=0.5790; MPL=0.2895; RMSE=1.6005; RRMSE=0.2098; D2AE=0.9056; D2P=0.9056; EVS=0.9568; R2=0.9560 

gbpeur - Naive MSE=0.46209; MAE=0.4272; MPL=0.2136; RMSE=0.6798; RRMSE=0.0886; D2AE=0.9306; D2P=0.9306; EVS=0.9921; R2=0.9921 
gbpeur - MachL MSE=2.37865; MAE=0.5278; MPL=0.2639; RMSE=1.5423; RRMSE=0.2010; D2AE=0.9142; D2P=0.9142; EVS=0.9597; R2=0.9596 

gbpjpy - Naive MSE=0.45765; MAE=0.4240; MPL=0.2120; RMSE=0.6765; RRMSE=0.0799; D2AE=0.9372; D2P=0.9372; EVS=0.9936; R2=0.9936 
gbpjpy - MachL MSE=3.75635; MAE=0.7094; MPL=0.3547; RMSE=1.9381; RRMSE=0.2288; D2AE=0.8949; D2P=0.8949; EVS=0.9481; R2=0.9477 

gbpusd - Naive MSE=0.48763; MAE=0.4438; MPL=0.2219; RMSE=0.6983; RRMSE=0.0837; D2AE=0.9334; D2P=0.9334; EVS=0.9930; R2=0.9930 
gbpusd - MachL MSE=3.54093; MAE=0.6894; MPL=0.3447; RMSE=1.8817; RRMSE=0.2256; D2AE=0.8966; D2P=0.8966; EVS=0.9499; R2=0.9491 

nzdusd - Naive MSE=0.47192; MAE=0.4402; MPL=0.2201; RMSE=0.6870; RRMSE=0.0905; D2AE=0.9289; D2P=0.9289; EVS=0.9918; R2=0.9918 
nzdusd - MachL MSE=1.83312; MAE=0.4762; MPL=0.2381; RMSE=1.3539; RRMSE=0.1784; D2AE=0.9230; D2P=0.9230; EVS=0.9682; R2=0.9682 

usdcad - Naive MSE=0.49651; MAE=0.4515; MPL=0.2257; RMSE=0.7046; RRMSE=0.0865; D2AE=0.9307; D2P=0.9307; EVS=0.9925; R2=0.9925 
usdcad - MachL MSE=2.74921; MAE=0.5938; MPL=0.2969; RMSE=1.6581; RRMSE=0.2035; D2AE=0.9089; D2P=0.9089; EVS=0.9596; R2=0.9586 

usdchf - Naive MSE=0.45130; MAE=0.4164; MPL=0.2082; RMSE=0.6718; RRMSE=0.0786; D2AE=0.9410; D2P=0.9410; EVS=0.9938; R2=0.9938 
usdchf - MachL MSE=3.09708; MAE=0.6999; MPL=0.3499; RMSE=1.7599; RRMSE=0.2059; D2AE=0.9009; D2P=0.9009; EVS=0.9592; R2=0.9576 

usdcnh - Naive MSE=0.46003; MAE=0.4254; MPL=0.2127; RMSE=0.6783; RRMSE=0.0833; D2AE=0.9336; D2P=0.9336; EVS=0.9931; R2=0.9931 
usdcnh - MachL MSE=2.76555; MAE=0.5495; MPL=0.2747; RMSE=1.6630; RRMSE=0.2044; D2AE=0.9142; D2P=0.9142; EVS=0.9585; R2=0.9582 

usdjpy - Naive MSE=0.51539; MAE=0.4548; MPL=0.2274; RMSE=0.7179; RRMSE=0.0782; D2AE=0.9372; D2P=0.9372; EVS=0.9939; R2=0.9939 
usdjpy - MachL MSE=3.76475; MAE=0.6464; MPL=0.3232; RMSE=1.9403; RRMSE=0.2115; D2AE=0.9107; D2P=0.9107; EVS=0.9554; R2=0.9553 

usdsek - Naive MSE=0.47795; MAE=0.4383; MPL=0.2191; RMSE=0.6913; RRMSE=0.0822; D2AE=0.9348; D2P=0.9348; EVS=0.9932; R2=0.9932 
usdsek - MachL MSE=3.07408; MAE=0.6188; MPL=0.3094; RMSE=1.7533; RRMSE=0.2085; D2AE=0.9080; D2P=0.9080; EVS=0.9566; R2=0.9565 

usdx - Naive MSE=0.48430; MAE=0.4418; MPL=0.2209; RMSE=0.6959; RRMSE=0.0831; D2AE=0.9341; D2P=0.9341; EVS=0.9931; R2=0.9931 
usdx - MachL MSE=2.86516; MAE=0.6748; MPL=0.3374; RMSE=1.6927; RRMSE=0.2020; D2AE=0.8993; D2P=0.8993; EVS=0.9592; R2=0.9592 

year: 16 / input data len(6304) / forecast len(6304)

Process finished with exit code 0


Надо спросить мнение знающих форумчан. Почему при остационаривания ряда Наивный прогноз вдруг резко улучшил свои показатели?

 

Какой прогноз по евро-доллару?

Скажет 1.2065, похлопаю в ладошки

;)

 
Renat Akhtyamov #:

Какой прогноз по евро-доллару?

Скажет 1.2065, похлопаю в ладошки

;)

По данным сайта *.com, на 22 апреля 2023 года курс евро-доллар составляет 1 евро = 1,13 доллара. На сайте *.org прогнозируют, что в 2024 году курс EUR/USD не достигнет новых максимумов но будет торговаться на довольно высоких уровнях.

Прогноз евро/доллар: курс EUR/USD на 2023, 2024-2025 годы и долгосрочные перспективы | LiteFinance

+

Со своей стороны могу добавить, что на данный момент у меня нет никаких сигналов по EURUSD.


Прогноз евро/доллар: курс EUR/USD на 2023, 2024-2025 годы и долгосрочные перспективы | LiteFinance
Прогноз евро/доллар: курс EUR/USD на 2023, 2024-2025 годы и долгосрочные перспективы | LiteFinance
  • 2023.04.17
  • Яна Кане https://www.litefinance.org/ru/blog/authors/jana-kane/
  • www.litefinance.org
Любые долгосрочные прогнозы неточны. Однако пара EUR/USD следует определенным долгосрочным трендам. Если вы посмотрите на ценовой график, вы заметите: цена повторяет свои действия в долгосрочной перспективе. Для входа в краткосрочные сделки следует проверять фундаментальные факторы, которые обычно влияют на курс EUR/USD.
 
GigaChat. Русскоязычная ChatGPT от Сбера.


Цитата из статьи:

Важной часть работы является оценка моделей. Автоматические метрики не всегда коррелируют с человеческим мнением об ответе модели, поэтому ключевой оценкой были SBS (side by side) тесты. В таких тестах разметчики определяют предпочтительный вариант ответа от разных моделей. Также мы использовали более развернутые метрики типа ODMEN (наша внутренняя метрика, которую стоит обсуждать отдельно) и уделили время оценке этичности модели.

От эксперимента к эксперименту мы замеряли таким образом качество и выбрали самую удачную модель в кандидаты для релиза.

Не обошли стороной и сравнение с ChatGPT. Собрав "корзину" из запросов разной тематики, мы провели на ней SBS между нашей моделью и моделью от OpenAI (gpt-3.5-turbo). Начиная от 3:97 в пользу ChatGPT, нам удалось добиться результата 30:70 в финальной версии модели.

Дообучать LLaMA 13B на наших инструкциях мы тоже пробовали и результаты оказались неплохи, однако ruGPT-3.5 13B показала себя лучше в SBS тестировании — 58:42 в пользу нашей модели.

Теперь главное. Мы плавно открываем модель для всех желающих, в том числе и по API. Также мы запустили закрытый Telegram-канал — вступившие в него пользователи в числе первых получат доступ к GigaChat. Доступ будет открываться волнами, чтобы адекватно поддерживать нагрузку. Хочется, чтобы у пользователей не было каких-то чрезмерных таймаутов при работе с моделью.

А модель ruGPT-3.5 13B, на основе которой был обучен GigaChat, мы скоро выложим в открытый доступ на huggingface. Поэтому сообщество скоро сможет само обучать качественные русскоязычные модели даже на домашних видеокартах и в Colab’е. Благо, что в последнее время у многих появился опыт дообучения LLaMA, используя LoRA адаптеры (при таком подходе обучается не вся сеть, а только отдельные дополнительные слои).

Это не чат, это GigaChat. Русскоязычная ChatGPT от Сбера
Это не чат, это GigaChat. Русскоязычная ChatGPT от Сбера
  • 2023.04.24
  • habr.com
Хайп вокруг нейросетей, выровненных при помощи инструкций и человеческой оценки (известных в народе под единым брендом «ChatGPT»), трудно не заметить. Люди разных профессий и возрастов дивятся примерам нейросетевых генераций, используют ChatGPT для создания контента и рассуждают на темы сознания, а также повсеместного отнимания нейросетями...
 

Некоторые результаты были достигнуты с помощью кода машинного обучения, предложенного ИИ, для прогнозирования данных временных рядов. Обученная модель может прогнозировать данные индикатора RSI практически для любого символа и таймфрейма. Из исходных результатов тестирования модели были выбраны те Символы и таймфреймы, для которых ошибка от "AVG(mse;mae;mpl;rmse;rrmse)" была меньше среднего значения ошибки и значения метрики от "AVG(d2p;r2 )" было больше, чем среднее значение метрики. Все остальные результаты тестов были отброшены как менее точные. 

На данный момент похоже можно попробовать создать стратегию, в которой прогнозы делаются по нескольким таймфреймам одновременно, и искать сигнал: если направление изменения значений младших таймфреймов совпадают с направлением изменения значений для старших таймфреймов.


+

В приложении тестовые данные, из которых была получена метрика обученной модели. Метрика рассчитывается для целых чисел, например, цель 46,00, прогноз 46,33, ошибка 0,33.

Файлы:
test_data.zip  10927 kb
 

Кто-то может попытаться продать то, что кто-то другой опубликовал бесплатно. Потому Я пока не буду публиковать здесь код модели. Но для интересующихся я опубликую описание модели, позволяющее понять, как она устроена.

Эта модель глубокого обучения имеет сверточные слои, плотные слои и слои LSTM. Сверточные слои используются для извлечения признаков, а плотные слои - для классификации. Слои LSTM используются для прогнозирования последовательности.

Модель имеет 12 входных признаков и 1 выходной признак. Форма ввода - (12, 1). В модели всего 4 064 обучаемых параметров.

Модель построена с использованием Keras Sequential API. Это популярный API высокого уровня для создания моделей глубокого обучения.

Архитектура модели может быть описана следующим образом:

  • Сверточный слой с * фильтрами и ядром размером * с функцией активации * и формой ввода (12, 1).
  • Слой пакетной нормализации.
  • Сверточный слой с * фильтрами и ядром размером * с функцией активации *.
  • Слой пакетной нормализации.
  • Сверточный слой с * фильтрами и ядром размером * с функцией активации *.
  • Слой пакетной нормализации.
  • Плотный слой с * единицами и функцией активации *.
  • Dropout-слой со значением *.
  • Плотный слой с *единицами и функцией активации *.
  • Dropout-слой со значением *.
  • Плотный слой с * и * функцией активации.
  • Слои LSTM с * единицами и возвратом последовательности.
  • Слой пакетной нормализации.
  • Dropout-слой со значением *.
  • Слои LSTM с *единицами.
  • Слой пакетной нормализации.
  • Dropout-слой со значением *.
  • Плотный слой с *единицами, функцией активации *, регуляризатором ядра L2 (*), регуляризатором смещения L2 (*) и инициализатором ядра RandomNormal (*).
  • Dropout-слой со значением *.
  • Плотный слой с *, функцией активации *, регуляризатором ядра L2 (*), регуляризатором смещения L2 (*) и инициализатором ядра RandomNormal (*)


Используя это описание, программист или ИИ очень легко создадут собственную модель, которая фактически будет копией модели, предложенной ИИ.

 
Lilita Bogachkova #:

Кто-то может попытаться продать то, что кто-то другой опубликовал бесплатно. Потому Я пока не буду публиковать здесь код модели. 

Lilita, никто не сможет продать то, что пока не имеет своего красивого стейта. 

Если эта штука работает в тестере и показывает что-то похожее на стабильность (пусть и на небольшом форварде, пусть и с постоянным дообучением), то тогда уже можно говорить о продажах.

 
Ivan Butko #:

Lilita, никто не сможет продать то, что пока не имеет своего красивого стейта. 

Если эта штука работает в тестере и показывает что-то похожее на стабильность (пусть и на небольшом форварде, пусть и с постоянным дообучением), то тогда уже можно говорить о продажах.

Может быть, я ошибаюсь, но мой опыт пока учит, что стабильный результат должен быть достигнут на каждом этапе разработки, прежде чем двигаться дальше. Так что сейчас речь идет только об обучении модели и анализе результатов прогноза. Вероятно, это связано с тем, что я давно перестала искать единственный вариант, на который возлагались все мои надежды, то есть у меня нет принципиальной необходимости сразу пытаться адаптировать код для торговли.

Например, для меня важно, чтобы модель была универсальной (способной делать прогнозы для любого символа). Как видно из таблицы, опубликованной выше, из 26 используемых символов и 14 таймфреймов выкристаллизовались конкретные таймфреймы, на которых делаются наиболее точные предсказания для нескольких символов. 

И только когда такие таймфреймы были найдены, стоит начинать думать о создании будущей торговой стратегии.

Например, тест M20 имеет 8 символов среди лучших результатов. Что из этого можно сделать, покажет время.


 

Итак, какова наихудшая производительность модели при прогнозировании следующего значения?


Самая большая средняя ошибка:


Наименьшая точность:


CNHAUD M5 (самая большая средняя ошибка)



EURCHF M5 (наименьшая точность)


В чем разница между лучшими и худшими результатами?

Наименьшая средняя ошибка ((mse+mae+mpl+rmse+rrmse)/5) 0,273, наибольшая средняя ошибка 0,576.

Самая низкая средняя точность ((d2p+r2)/2) 0,960, самая высокая средняя точность 0,980

Самая маленькая ошибка:



Высочайшая точность:



Критически ли велика эта разница?
Сравнивая 352 возможных варианта, можно увидеть, что разница между лучшими и худшими результатами составляет всего несколько процентов.