CoolFace
Apppublic

kaan1233/bistelligence-api

sourceHugging Faceupdated 2mo agoView on Hugging Face
0likes
ml_model.cpython-313.pyc121 linesDownload Raw Back to __pycache__
1�

2s`Ej�6���SSKrSSKrSSKrSSKrSSKrSSKrSSK	J3r4JrJr SSK
Jr SSKJr SSKr\R$"S5 0rSqSrSrSrSS	jrS5rSrg)
�N)�HistGradientBoostingClassifier�RandomForestClassifier�VotingClassifier)�
XGBClassifier)�accuracy_score�ignorec�6�[c�SSKJnJn U [RSS/SSUS9SqSSS5 [R
5R5q[RRb([RRS5[l[R(d�[RUS	S69R!SS79R!S5n[R"US9nSUR";a&USR%S
5R!S5US'SUR";a&USR%S
5R!S5US'U$g!,(df   GN<=f![a [R"5qN�f=f)Nr)�_yf_session�_yf_lockzTRY=XzGC=F�10yF)�period�progress�session�Close�ffill)�method�bfill)�index�8�USDTRY_Trend�9GOLD_Trend)�_macro_cache�data_fetcherr10r�yf�downloadrrr�tzinfo�tz_localize�	Exception�pd�	DataFrame�empty�reindex�fillna�columns�11pct_change)�df_indexr12r�macro�ress     �ml_model.py�get_macro_featuresr*sP����	*�:��!�{�{�G�V�+<�U�UZ�do�{�p�qx�y���'�-�-�/�5�5�7�L��!�!�(�(�4�%1�%7�%7�%C�%C�D�%I��"�����$�$�X�g�$�>�E�E�W�E�U�\�\�]^�_���l�l��*���e�m�m�#�"'��.�";�";�B�"?�"F�"F�q�"I�C����U�]�]�"� %�f�
� 8� 8�� <� C� C�A� F�C����13��#���14�	*��<�<�>�L�	*�s(�15E6�E$�A-E6�$16E3�.E6�6F�Fc�x17�UR5n[R"USSS9US'[R"US5nUbTUR(dCUR18SS2S4US'UR19SS2S4US	'UR20SS2S214US'OSUS'SUS	'SUS'[R"USSSS
9nUbnUR(d]UR22SS2S4US'UR23SS2S244US'UR25SS2S4US'USUS-26USUS-27-US'OUSUS'USUS'USUS'SUS'[R"USUSUSSS9US'[R"USUS5US'[R"US5nUb>UR(d-UR28SS2S4US'UR29SS2S304US'O31SUS'SUS'SHnUSRU5USU3'M [UR5nUb[R"X/S32S9nUR[ R"[ R"*/[ R$SS9 [R&"USUSUSSS9nUbTUR(dCUR33SS2S4US 'UR34SS2S354US!'UR36SS2S4US"'OSUS 'SUS!'SUS"'[R("USUSUSSS9nUbUOSUS#'[R*"USUSUSSS9n	U	bU	OSUS$'[R,"USUSUSUSSS9n37U38bU39OSUS%'USR/S405US&'USR/S'5US('USR/S)5US*'USR/S5US+'US&R1S)5R35US,'US&R1S5R35US-'[R4"USSS9US.'[R4"USSS9US/'USUS.-US0'USUS/-US1'US.US/-US2'USR1S5R75US3'USUS3-US4'USR/S'5US5'USUS-S6-US7'USUS-41US-S6-US8'[R8"USS'S9US9'USR;S:5US;'U$)<u�42Genişletilmiş feature engineering.43Teknik göstergelerin yanı sıra momentum, volatilite ve fiyat yapısı özellikleri ekler.44r�)�length�RSINr�MACD��MACD_Signal��	MACD_Hist�)r-�std�BBL�BBM�BBU�BB_Pctg�?�High�Low�ATR�Volume�OBV�STOCHk�STOCHd�2)r2r0��Lag_)�axisT)�inplace�ADX�PLUS_DI�MINUS_DI�WILLR�CCI�MFI�	Return_1d��	Return_5dr�45Return_10d�46Return_20d�Volatility_10d�Volatility_20d�SMA_20�SMA_50�Price_SMA20_Ratio�Price_SMA50_Ratio�SMA20_SMA50_Ratio�Volume_SMA20�Volume_Ratio�OBV_Momentum�d�ATR_Pct�BB_Width�ROC_5rB�	RSI_Slope)�copy�ta�rsi�macdr!�iloc�bbands�atr�obv�stochrsi�shiftr*rr�concat�replace�np�inf�nan�adx�willr�cci�mfir%�rollingr5�sma�mean�roc�diff)�df�df_mlrcre�stoch�i�macro_feats�adx_datarprqrrs           r)�_build_featuresr~*s���47
�G�G�I�E��6�6�%��.��4�E�%�L�
�7�7�5��>�"�D����48�49��	�	�!�Q�$���f�
�#�y�y��A����m��!�Y�Y�q�!�t�_��k����f�
� ��m����k��
�Y�Y�u�W�~�b�a�
8�F�
��&�,�,��{�{�1�a�4�(��e���{�{�1�a�4�(��e���{�{�1�a�4�(��e�� ��>�E�%�L�8�U�5�\�E�RW�L�=X�Y��h���W�~��e���W�~��e���W�~��e����h���6�6�%��-��u��u�W�~�b�Q�E�%�L��6�6�%��.�%��/�:�E�%�L��K�K��g��'�E�������*�*�Q��T�*��h���*�*�Q��T�*��h����h����h����!�'�N�0�0��3���Q�C�j���%�U�[�[�1�K����	�	�5�.�Q�7��	�M�M�2�6�6�B�F�F�7�#�R�V�V�T�M�:��v�v�e�F�m�U�5�\�5��>�"�M�H���H�N�N��}�}�Q��T�*��e��#�=�=��A��.��i��$�M�M�!�Q�$�/��j����e����i����j��
�H�H�U�6�]�E�%�L�%��.��L�E�#�/�U�Q�E�'�N�
�&�&��v���e��e�G�n�R�50H�C��/�3�q�E�%�L�
�&�&��v���e��e�G�n�e�H�o�VX�51Y�C��/�3�r�E�%�L��w��2�2�1�5�E�+���w��2�2�1�5�E�+����.�3�3�B�7�E�,����.�3�3�B�7�E�,��$�K�0�8�8��<�@�@�B�E�52��#�K�0�8�8��<�@�@�B�E�53���f�f�U�7�^�B�7�E�(�O��f�f�U�7�^�B�7�E�(�O�!&�w��%��/�!A�E�54��!&�w��%��/�!A�E�55��!&�x��5��?�!B�E�56��"�(�O�3�3�B�7�<�<�>�E�.��!�(�O�e�N�.C�C�E�.��!�%�L�3�3�A�6�E�.���U�|�e�G�n�4�s�:�E�)���u���e��4��e��D�s�J�E�*���V�V�E�'�N�1�5�E�'�N��u��*�*�1�-�E�+���L�c��/SQnSUR;aURS5 SUR;aURS5 U$)N)r.r/r1r3r9r<r>r?r@rFrGrHrIrJrKrLrNrOrPrQrRrUrVrWrYr]r^r_�Lag_1�Lag_2�Lag_3rr)r$�append)ry�featuress  r)�get_feature_namesr��s@���H�����&�����'��u�}�}�$�����%��Orc��Ub[U5S:agU[;a	[U$[R"SSS9 SUS3n[RRU5(a[[R"5[RRU5-57S:a"[R"U5nU[U'U$[U5nUSRS5US-S
-58US'USS:�R[5US'UR!5n[U5S:ag[[U5S-5nUR"SUnUR"USn[%U5n	Xyn59USnX�nUSn
U60R'[(R*[(R**/[(R,5R/S5n61UR'[(R*[(R**/[(R,5R/S5nSSKJn SSKJn SSKJn [=SSSSSS9n[?SSSSSS9n[ASSS SSSS!S"9nU"U"5U"S#SS$SSS%95n[CS&U4S'U4S(U4S)U4/S*S+9nUREX�5 URGU5n[IU
U5nURJS
REX�5 /n[MUS,5(a\URNn[(RP"U5SSS-2SS nUH*nURSU	U[UUUS-S
5S..5 M, Ol[MUS,5(a[URNn[(RP"U5SSS-2SS nUH*nURSU	U[UUUS-S
5S..5 M, U[UUS-S
5U[U5[U5S/.nU[U'[RV"X25 U$![an[S	US62U35 SnAGNOSnAff=f![an[S0US63U35 SnAU$SnAff=f)1uo64Ensemble modeli eğitir (GradientBoosting + RandomForest).65Walk-forward validation ile data leakage önlenir.66N���	ml_modelsT)�exist_okz67ml_models/z
_model.joblibi�Qz[ML] Cache read error for z: r�����r2�Future_Return_5g{�G�z�?�Targetr[g�������?r)�
MLPClassifier)�StandardScaler)�
make_pipeline�g�������?�r�*)�max_iter�
learning_rate�	max_depth�min_samples_leaf�random_state��balanced)�n_estimatorsr�r��class_weightr�rM�logloss)r�r�r��	subsample�colsample_bytreer��eval_metric)�@� g{�G�z�?)�hidden_layer_sizesr��learning_rate_initr��early_stopping�gb�rf�xgb�mlp�soft)�68estimators�voting�feature_importances_�����)�name�69importance)�ensemble�ens_accuracy�feature_importance�70train_size�	test_sizezL] Cache write error for ),�len�_model_cache�os�makedirs�path�exists�time�getmtime�joblib�loadr�printr~ri�astype�int�dropnardr�rkrlrmrnr#�sklearn.neural_networkr��sklearn.preprocessingr��sklearn.pipeliner�rrrr�fit�predictr�estimators_�hasattrr��argsortr��round�dump)rx�ticker�71model_path�model_bundle�ery�	split_idx�72train_data�	test_data�features_to_use�X_train�y_train�X_test�y_testr�r�r��gb_model�rf_model�	xgb_model�	mlp_modelr��ens_pred�ens_accr��fi�indices�idxs                            r)�train_modelr��sQ��7374�z�S��W�s�]��
����F�#�#��K�K��d�+��f�X�]�3�J�	�w�w�~�~�j�!�!��9�9�;����)�)�*�5�5�	�A�
B�%�{�{�:�6��'3��V�$�#�#�
�B��E� %�W�~�3�3�B�7�%��.�H�1�L�E�75���.�/�$�6�>�>�s�C�E�(�O��L�L�N�E�76�5�z�C����C��J��%�&�I����J�Y�'�J��77�78�9�:�&�I�'��.�O��)�G���"�G�
�
'�F�
�x�
 �F��o�o�r�v�v����w�/����8�?�?��B�G�
�^�^�R�V�V�b�f�f�W�-�r�v�v�
6�
=�
=�a�
@�F�4�4�/�.��D�A��"��H�&��A���bd��H�������"�)��I������C�TX�gi�z~���I�79 ��8�$�t�X�&6��	�8J�U�T]�L^�_���H�80
�L�L��"�����'�H��V�X�.�G�
��������1��J��x�/�0�0�
�
*�
*���*�*�R�.��2��&�r��*���C����'��,�#�B�s�G�c�M�1�5��
��8182��1�	2�	2�
�
*�
*���*�*�R�.��2��&�r��*���C����'��,�#�B�s�G�c�M�1�5��
����g��m�Q�/�(��*�o���^��L�(�L���;����L�-����M�
B��2�6�(�"�Q�C�@�A�A��
B��F�;�
�+�F�8�2�a�S�9�:�:����;�s0�  O/�P�/83P�9P�P�84P>�"P9�9P>c�<�UcSSSS/S.$USn[U5n[U5nX4RSSnUR[R85[R86*/[R5RS5nUR5R5R5(aSSS/SS.$URU5SS	nURSRU5SS	nURS	RU5SS	n[US87-S	5[US88-S	5[US89-S	5URSS5S-URS
/5S.$![a n	[SU	35 SSS/SS.sSn	A	$Sn	A	ff=f)uc90Eğitilmiş ensemble modeli kullanarak güncel veriye tahmin üretir ve Feature Importance verir.91NrAr)�92confidence�
gb_confidence�
rf_confidence�model_accuracyr�r�r��I@)r�r�r�r�r�r2r[r�gY@r�uML Predict Hatası: )r~r�rdrkrlrmrnr#�isna�any�
predict_probar�r��getrr�)93r�rxr�ryr��current_features�ensemble_proba�gb_proba�rf_probar�s94          r)�predict_confidencer�)s����� �2��^_�wy�z�z��J�'�H��B��E�'��.�O��-�2�2�2�3�7��'�/�/����"�&�&��0A�2�6�6�J�Q�Q�RS�T������"�"�$�(�(�*�*�"�T�D�hj�~�A�	A�A�!�/�/�0@�A�!�D�Q�G���'�'��*�8�8�9I�J�1�M�a�P���'�'��*�8�8�9I�J�1�M�a�P�� ��� 4�a�8�"�8�c�>�1�5�"�8�c�>�1�5�*�.�.�~�q�A�E�I�".�"2�"2�3G��"L�95�	96���A�
�$�Q�C�(�)�"�T�D�hj�~�A�	A��A�s�B0E1�197F�;F�F�Fc���UbUb[U5S:aSSSS.$[U5nURSn[X5nUSnUR	SS5nUR	SS5nUR	S	S985n[99R"U5(aSn[100R"U5(aSn[101R"U5(aS102nSn	US:�a	US:�aS
n	O US103:�aSn	OUS:a	US:�aSn	OUS104:aSn	Sn105US:�aSn106OUS:aSn107[S[SX�-55n[S[S[US-US--555n[US5[US5[US5S.$)u�108Çoklu zaman ufku tahminleri.109Not: Mevcut model sadece 5 günlük hedefe eğitilmiş.110Burada ek modeller yerine mevcut veriden çıkarım yapıyoruz.111rAr�)�5_day�10_day�20_dayr�r�r.rFrrVg�?gR���Q�?��A�7g\���(\�?�#�-�Fi�����rr[gffffff�?g333333�?r2)r�r~rdr�r�rr��max�minr�r�)
r�rxry�current�112prediction�conf_5rbro�price_sma_ratio�113trend_bias�rsi_adj�conf_10�conf_20s
             r)�predict_multi_horizonrNs�����r�z�S��W�r�\����>�>��B��E��j�j��n�G�$�L�5�J�
��
%�F��+�+�e�R�114 �C�115�+�+�e�Q�116�C��k�k�"5�s�;�O�	�w�w�s�|�|�2�S�	�w�w�s�|�|�1�S�	�w�w����3���J����#��(��117�	�3�	��118�	�4�	�C�"�H��119�	�3�	��120��G�121�R�x���	�r�����!�S��j�2�3�4�G��!�S��c�'�C�-�&�3�,�">�?�@�A�G��v�q�!����#����#��r)�unknown)�pandasr�numpyrl�	pandas_tarar�r�r��sklearn.ensemblerrr�xgboostr�sklearn.metricsr�warnings�filterwarningsr�rr*r~r�r�r�r�rr)�<module>rsd�����
�	��e�e�!�*������!������0n�d
� z�z"A�J5r