بازار سهام در حال رونق است و همه می خواهند برای تولید ثروت به این قطار بپردازند. و شرط می بندم این همان چیزی است که شما را به اینجا آورده است ، "بهترین استراتژی تجارت/سرمایه گذاری" ، اما یک جستجوی ساده گوگل با این نقل قول می تواند گودال بی انتها از استراتژی های معاملاتی پیچیده را به شما بدهد که ادعا می کند از همه بهترین نتیجه است. و ما می خواهیم این موضوع را به قول سرمایه گذار افسانه ای وارن بوفه توضیح دهیم ، "به نظر می رسد برخی از ویژگی های منحصر به فرد انسانی وجود دارد که دوست دارد کارهای آسان را دشوار کند."
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - افشای اطلاعات: هیچ چیز در این پست نباید مشاوره سرمایه گذاری تلقی شود. نتایج گذشته همیشه پیش بینی نتایج آینده نیست. اینها نمونه های معمولی در مورد نحوه استفاده از پاندا برای وارد کردن داده ها برای نمونه کوچک سهام در فواصل زمانی مختلف و مقایسه عملکرد فردی آنها است. کلیه نمایش داده های مربوط به سرمایه گذاری باید به مشاور مالی شما هدایت شود.
کسب درآمد در بورس سهام اگر نظم و انضباط داشته باشید آسان است و هدف خود را روشن نگه دارید. گفتن این کار آسان است ، اما وقتی پول خود را در خط قرار می دهیم ، قصد عاطفی ما اغلب با نظم و انضباط ما جوانه می زند. از این رو ما باید در این دستگاه پول سازی ، با نام تجاری سهام ، پول نقد سخت خود را از دست بدهیم.
تجارت الگوریتمی (همچنین به عنوان تجارت جعبه سیاه یا تجارت ALGO نیز شناخته می شود) در بین خرده فروشان مدرن برای حذف موانع مدیریت احساسات رواج پیدا می کند. در تجارت Algo ، یک برنامه رایانه ای براساس مجموعه قوانین/دستورالعمل هایی که ارائه می دهید سفارشات خرید یا فروش را اجرا می کند.
تجارت Algo چیست؟
تجارت Algo یک رویکرد سیستماتیک برای تجارت فعال است که فرصت را بر اساس یک مدل ریاضی مشخص می کند. مدل های ریاضی معمولاً براساس شاخص های حاصل از قیمت سهام ، حجم ، خرید/فروش نهادی ، معاملات فله یا بلوک و غیره است. چهار نوع شاخص فنی وجود دارد - شاخص های حرکت ، شاخص های نوسانات و شاخص های حجم و برای پیش بینی استفاده می شودحرکت آینده قیمت.
مزایای تجارت Algo:
1) اجرای با بهترین قیمت ممکن
2) قرار دادن سفارش فوری
3) کاهش خطاهای دستی
4) احتمال اشتباهات ناشی از عوامل عاطفی و روانی را کاهش می دهد.
5) کد را می توان به راحتی با توجه به نتیجه Backtest به صورت پشتیبان تهیه و تصفیه کرد.
ما شرط می بندیم که شما قبلاً از همه این شاخص ها حساب می کنید ، اما همانطور که آلبرت انیشتین گفت ، "نبوغ در ساخت پیچیده است" ، ما با 2 مورد از تأثیرگذارترین و سودآورترین استراتژی ها و مقایسه نتایج هر دو خواهیم بود.
استراتژی 1- متقاطع متوسط متحرک (SMA)
میانگین های حرکت یا میانگین نورد یکی از متداول ترین روش های تجزیه و تحلیل داده های سری زمانی است. این شامل تولید یک سری میانگین از زیر مجموعه های مختلف کل مجموعه داده ها است و برای از بین بردن "نویز" در عملکرد سهام استفاده می شود.
SMA با افزودن قیمت نزدیک تعداد روزهای قبلی "N" و تقسیم آن بر تعداد روزها محاسبه می شود.
استراتژی متقاطع SMA معمولاً با میانگین حرکت 2 طول انجام می شود:
- میانگین متحرک متحرک کوتاه- میانگین سریعتر متحرک که نسبت به تغییرات قیمت روزانه واکنش بیشتری دارد
- میانگین حرکت متوسط آهسته تر در حال حرکت است که نشان می دهد قیمت ها در یک دوره طولانی تر و بی اثر تر است.
در این مثال ما از 50 روز برای میانگین حرکت کوتاه و 200 روز برای میانگین حرکت طولانی استفاده خواهیم کرد. سایر میانگین های محبوب کوتاه و طولانی در حال حرکت عبارتند از: 9 و 21 روز.
هنگامی که متقاطع بین میانگین های متحرک کوتاه و طولانی اتفاق می افتد ، دو سیگنال ایجاد می شود:
سیگنال خرید (خرید) - هنگامی که میانگین متحرک کوتاه تر از آن فراتر می رود ، میانگین حرکت طولانی تر ، یعنی میانگین متحرک کوتاه از میانگین حرکت طولانی مدت از زیر - همچنین به عنوان کراس اوور طلایی شناخته می شود.
فروش (کوتاه) signa l- هنگامی که میانگین متحرک طولانی تر از میانگین حرکت کوتاه تر فراتر می رود ، یعنی میانگین حرکت کوتاه از میانگین حرکت طولانی از بالا- که به عنوان متقاطع مرده نیز شناخته می شود.
استراتژی 2- خرید و نگه داشتن
این یک استراتژی سرمایه گذاری منفعل است که یک سرمایه گذار دارایی را خریداری می کند و آن را برای مدت طولانی نگه می دارد. معامله گران/سرمایه گذاران پیروی از این استراتژی نگران نوسانات قیمت کوتاه مدت در بازار و شاخص های فنی نیستند. سرمایه گذاران مانند وارن بوفه و جک گوگل طرفداران رویکرد خرید و نگهدار هستند.
این یکی از در دسترس ترین انواع استراتژی سرمایه گذاری است که در آن وفاداری و تعهد ما برای مدت طولانی پاداش می گیرد.
گزینه دیگر استفاده از سری زمانی است که به جای ارزش واقعی با تغییر در ارزش پولی دارایی ارتباط دارد. این سریال های زمانی ممکن است و ویژگی های منفی را به خود اختصاص دهند ، و ویژگی های آماری آنها اغلب از دوره قیمت پایدارتر است. رایج ترین نوع بازده بازده نسبی است که به صورت تعریف شده است
برای اجرای ریاضی این استراتژی ، می توانیم از برگشتی Log استفاده کنیم که با گرفتن یک گزارش طبیعی از مقدار پایان یافته با ارزش شروع محاسبه می شود.
مزایای استفاده از ورود به سیستم عبارتند از:
1) بازده ورود به سیستم را می توان در دوره های زمانی مختلف اضافه کرد.(روی دست های دیگر ، اضافه کردن بازده های ساده می تواند نتایج را گمراه کند)
2) برگه ورود به سیستم از توزیع عادی پیروی می کند.
3) بازده ورود به سیستم را می توان به بازده ساده تبدیل کرد.
از آنجا که بازده ورود به سیستم افزودنی است ، می توانید سری زمانی بازده های تجمعی را ایجاد کنید.
تجزیه و تحلیل نزدیک هر دو استراتژی - خرید و نگه داشتن متقاطع SMA
برای پشت سر گذاشتن یا اجرای یک استراتژی در بازارهای زنده ، ما باید ساختار زیر را دنبال کنیم:
1) سهام/صندوق های متقابل/ETFS/cryptocurrency را انتخاب کنید
2) اطلاعات خود را (قیمت بسته شدن ، حجم و غیره) برای سهام انتخاب شده برای یک بازه زمانی مشخص استخراج کنید
3) داده ها را برای درک بهتر تجسم کنید
4) مدلهای ریاضی را اجرا و مقایسه کنید
برای نتیجه گیری برنده بین 2 استراتژی که در بالا به آن اشاره کردیم ، ما با ساخت یک نمونه کارها از سهام شروع خواهیم کرد.
سهام مورد استفاده در این نمونه کارها عبارتند از: (AMD) دستگاه های میکرو پیشرفته ، (Google) Google ، (WST) خدمات دارویی غربی ، (DXCM) Dexcom Inc. (نظارت گلوکز) ، (NVDA) شرکت Nvidia ، (AAPL) Apple ، Apple ، (AAPL).(AMZN) آمازون ، (MSFT) مایکروسافت ، (NFLX) Netflix ، (TSLA) تسلا
وارد کردن numpy به عنوان npواردات پاندا به عنوان PDاز تاریخ واردات DateTimePIP نصب yfinanceوارد کردن matplotlib. pyplot به عنوان pltyfinance را به عنوان yf وارد کنید٪ matplotlib درون خطی
ما قصد داریم از مالی یاهو استفاده کنیم! API و ما قیمت اختتامیه را برای دوره زمانی 2020-2022 استخراج خواهیم کرد
#تاریخ شروع را انتخاب کنیدstart_date = '2020-01-01'end_date = '2022-01-01'#در صورت استفاده از تاریخ فعلی به عنوان تاریخ پایان#end_date = date. today (). strftime ("٪ y- ٪ m- ٪ d")نماد = ['amd' ، 'googl' ، 'wst' ، 'dxcm' ، 'nvda' ، 'aapl' ، 'amzn' ، 'nflx' ، 'tsla' ، 'msft']#سهام سهامdf = yf. download (نماد ، start_date ، end = end_date) ['Close'] #Getting فقط مقادیر قیمت بستهdf. head ()در اینجا ما پنج ردیف اول قیمت های بسته شده را برای کل نمونه کارها به نمایش خواهیم گذاشت
تجسم داده ها:
هنگامی که ما یک داده های سری زمانی داریم می توانیم داده ها را در یک نمودار ترسیم کنیم و الگوهای قیمت و روندها را از نظر بصری شناسایی کنیم.
در اینجا ما از کتابخانه Matplotlib استفاده می کنیم تا حرکات قیمت بسته شدن را نشان دهیم که در صورتی که سهام خاص با یک زمان خوب عمل کند یا نه ، می توانیم بینش فوری کسب کنیم.
#قیمت سهام برای سهام متعددشکل = plt. figure (figsize = (16،12))AX1 = FIG. ADD_SUBPLOT (4،3،1)ax2 = fig. add_subplot (4،3،2)AX3 = FIG. ADD_SUBPLOT (4،3،3)ax4 = fig. add_subplot (4،3،4)ax5 = fig. add_subplot (4،3،5)ax6 = fig. add_subplot (4،3،6)ax7 = fig. add_subplot (4،3،7)AX8 = FIG. ADD_SUBPLOT (4،3،8)AX9 = FIG. ADD_SUBPLOT (4،3،9)AX10 = FIG. ADD_SUBPLOT (4،3،10)ax1. plot (df ['amzn'])ax1. set_title ("آمازون")ax2. plot (df ['amd'])ax2. set_title ("AMD")ax3. plot (df ['googl'])ax3. set_title ("Google")ax4. plot (df ['nflx'])ax4. set_title ("نتفلیکس")ax5. plot (df ['wst'])ax5. set_title ("WST")ax6. plot (df ['dxcm'])AX6. Set_Title ("DXCM")ax7. plot (df ['nvda'])ax7. set_title ("nvda")ax8. plot (df ['tsla'])ax8. set_title ("تسلا")ax9. plot (df ['aapl'])ax9. set_title ("aapl")ax10. plot (df ['msft'])ax10. set_title ("msft")plt. tight_layout ()# شکل را ذخیره کنیدplt. savefig ('حرکت قیمت سهام. png')#format = "png")plt. show ()1. تجزیه و تحلیل سهام AMD
برای آسان نگه داشتن کارها ، ما استراتژی های خود را فقط در یک سهام آزمایش می کنیم: دستگاه های میکرو پیشرفته (تیک: AMD) ، قبل از درخواست کل نمونه کارها.
ما می خواهیم مقادیر میانگین های متحرک ساده را تعریف کنیم: برای میانگین های کوتاه حرکت ما از 50 روز استفاده خواهیم کرد و برای میانگین های طولانی در حال حرکت با استفاده از 200 روز.
برای محاسبه میانگین متحرک ، ما از Pandas A Build in Rolling (پنجره = "n) استفاده می کنیم. معنی (می توانیم" N "را با تعداد روزها جایگزین کنیم.)
# زمان های AMD را دریافت کنید.amd = df. loc [: ، 'amd']# 50 و 200 روز حرکت میانگین قیمت های پایانی را محاسبه کنیدShort_rolling_amd = AMD. Rolling (پنجره = 50 ، min_periods = 1)long_rolling_amd = amd. rolling (پنجره = 200 ، min_periods = 1) . mean ()
در مرحله بعد ، ما در حال ایجاد قاب داده برای سهام AMD با اطلاعات اضافی هستیم: سیگنال و موقعیت ، محاسبه نرخ بازده با استفاده از بازده ورود به سیستم روزانه و محاسبه کل بازده سیستم معاملاتی برای استراتژی خرید و نگه داشتن.
ستون "سیگنال" به شرح زیر تولید می شود: مقدار 1 تعیین می شود اگر SMA 50 روز بیشتر از 200 روز SMA باشد ، مقدار 0 تنظیم می شود که SMA 200 روزه از SMA 50 روزه باشد.
ستون "موقعیت" تفاوت روز ستون "سیگنال" است
‘ Trade’ column is generated same as signal with exception of setting value -1 instead of 0 when 200 day SMA is>بیش از 50 روز SMA.
ستون "بازگشت" با استفاده از برگه برگشتی در جایی که لگاریتم قیمت گرفته می شود و سپس تفاوت مشاهدات پیوسته متوالی ایجاد می شود.
ستون "Tretu" بازده کل است که با ضرب ستون های "بازگشت" و "تجارت" محاسبه می شود.
#ایجاد DF برای سهام AMDamd = pd. dataframe ()#سیگنال ایجاد کنیدAMD['Signal']=np.where(AMD['50_MA']>AMD ['200_ma'] ، 1 ، 0)#سفارشات معاملاتی را ایجاد کنیدAMD ['موقعیت'] = amd ['سیگنال']. diff ()#محاسبه تجارتAMD['Trade'] = np.where(AMD['50_MA']>AMD ['200_ma'] ، 1 ، -1)#برای محاسبه نرخ بازده فوری (بازگشت روزانه)AMD ['Retu'] = np. log (amd. close) . diff ()#محاسبه بازده سیستم معاملاتیamd ['tretu'] = amd. retu*amd. tradeamd. head (100)
در مرحله بعد ، ما می توانیم امتیاز خرید و فروش را برای استراتژی تجارت تجسم کنیم. سیگنال خرید یک رنگ سبز است و سیگنال فروش یک رنگ قرمز است.
# طرح میانگین حرکت# قیمت بسته شدن طرح ، میانگین های کوتاه مدت حرکت و میانگین های حرکت بلند مدتplt. figure (figsize = (20،10))amd ['Close']. طرح (رنگ = 'k' ، برچسب = 'قیمت بسته شدن')amd ['50_ma']. طرح (رنگ = 'm' ، برچسب = '50 روز میانگین نورد ')AMD ['200_ma']. طرح (رنگ = 'g' ، برچسب = '200 روز نورد متوسط')# سیگنال های "خرید"plt. scatter (amd. loc [amd ['موقعیت'] == 1] . index ،amd ['50_ma'] [amd ['موقعیت'] == 1]Marker = '^' ، S = 250 ، Color = 'G' ، Label = 'Buy Signal')# سیگنال های "فروش"plt. scatter (amd. loc [amd ['موقعیت'] == -1] . index ،amd ['50_ma'] [amd ['موقعیت'] == -1] ،Marker = 'V' ، S = 250 ، Color = 'R' ، Label = 'Sold Signal')plt. title ("AMD خرید و فروش سیگنال")plt. xlabel ("تاریخ")plt. ylabel ("قیمت بسته شدن ($)")plt. savefig ('خرید و فروش سیگنال ها. png')#plt. show ()plt. legend () ؛اکنون می خواهیم بازده هر دو استراتژی را جمع کنیم:
#بازگشت به سیستم بازگشتtotal_tretu = np. exp (amd. tretu. sum ())#بازگشت کل سیستم معاملات متوسط حرکت#بازگرداندن و بازگشتhold_retu = np. exp (amd. retu. sum ())#بازگشت کل استراتژی خرید و نگه داشتنprint("AMD Trading System total retu: 10.2%>". Format (total_tretu))print("AMD Hold strategy retu: 10.2%>". Format (Hold_retu))در نتیجه می توانیم ببینیم که استراتژی Hold 293. 08 ٪ بازده در مقابل استراتژی معاملات با بازده 141. 76 ٪ داشته است.
2. تجزیه و تحلیل بازده نمونه کارها
در این بخش ما می خواهیم بازده کل نمونه کارها را تجزیه و تحلیل کنیم. شروع با محاسبه میانگین های کوتاه و طولانی در حال حرکت و ایجاد ستون تجارت
# محاسبه میانگین متحرک پنجره کوتاه برای کل نمونه کارهاShort_rolling = df. rolling (پنجره = 50 ، min_periods = 1) . Mean ()df_short = Short_rolling. add_suffix ('_ کوتاه')# محاسبه میانگین متحرک پنجره طولانی برای کل نمونه کارهاlong_rolling = df. rolling (پنجره = 200 ، min_periods = 1) . mean ()df_long = long_rolling. add_suffix ('_ طولانی')#برای پیوستن به دو میز به یک DFnew_df = pd. concat ([df_short ، df_long] ، محور = 1)#محاسبه معاملات برای کل نمونه کارهاnew_df['AMD_Trade'] = np.where(new_df['AMD_short']>new_df ['amd_long'] ، 1 ، -1)new_df['AMZN_Trade'] = np.where(new_df['AMZN_short']>new_df ['amzn_long'] ، 1 ، -1)new_df['AAPL_Trade'] = np.where(new_df['AAPL_short']>new_df ['aapl_long'] ، 1 ، -1)new_df['DXCM_Trade'] = np.where(new_df['DXCM_short']>new_df ['dxcm_long'] ، 1 ، -1)new_df['MSFT_Trade'] = np.where(new_df['MSFT_short']>new_df ['msft_long'] ، 1 ، -1)new_df['NFLX_Trade'] = np.where(new_df['NFLX_short']>new_df ['nflx_long'] ، 1 ، -1)new_df['NVDA_Trade'] = np.where(new_df['NVDA_short']>new_df ['nvda_long'] ، 1 ، -1)new_df['TSLA_Trade'] = np.where(new_df['TSLA_short']>new_df ['tsla_long'] ، 1 ، -1)new_df['WST_Trade'] = np.where(new_df['WST_short']>new_df ['wst_long'] ، 1 ، -1)new_df['GOOGL_Trade'] = np.where(new_df['GOOGL_short']>new_df ['googl_long'] ، 1 ، -1)# ایجاد ستون بازگشتlog_retus = np. log (df) . diff ()df_retu = log_retus. add_suffix ('_ بازگشت')new_df = pd. concat ([df_retu ، new_df] ، محور = 1)#مقادیر NAnew_df. dropna (inplace = true)#محاسبه نرخ بازپرداختnew_df ['amd_tretu'] = new_df. amd_retu*new_df. amd_tradeamd_total_tretu = np. exp (new_df. amd_tretu. sum ())چاپ ('AMD_TOTAL_TRETURN:' ، AMD_TOTAL_TRETURN)new_df ['amzn_tretu'] = new_df. amzn_retu*new_df. amzn_tradeamzn_total_tretu = np. exp (new_df. amzn_tretu. sum ())چاپ ('AMZN_TOTAL_TRETURN:' ، AMZN_TOTAL_TRETURN)new_df ['aapl_tretu'] = new_df. aapl_retu*new_df. aapl_tradeaapl_total_tretu = np. exp (new_df. aapl_tretu. sum ())چاپ ('aapl_total_tretu:' ، aapl_total_tretu)new_df ['dxcm_tretu'] = new_df. dxcm_retu*new_df. dxcm_tradedxcm_total_tretu = np. exp (new_df. dxcm_tretu. sum ())چاپ ('DXCM_TOTAL_TRETURN:' ، DXCM_TOTAL_TRETURN)new_df ['msft_tretu'] = new_df. msft_retu*new_df. msft_trademsft_total_tretu = np. exp (new_df. msft_tretu. sum ())چاپ ('MSFT_TOTAL_TRETURN:' ، MSFT_TOTAL_TRETURN)new_df ['nflx_tretu'] = new_df. nflx_retu*new_df. nflx_tradenflx_total_tretu = np. exp (new_df. nflx_tretu. sum ())چاپ ('nflx_total_tretu است:' ، nflx_total_tretu)new_df ['nvda_tretu'] = new_df. nvda_retu*new_df. nvda_tradenvda_total_tretu = np. exp (new_df. nvda_tretu. sum ())چاپ ('nvda_total_tretu:' ، nvda_total_tretu)new_df ['tsla_tretu'] = new_df. tsla_retu*new_df. tsla_tradetsla_total_tretu = np. exp (new_df. tsla_tretu. sum ())چاپ ('tsla_total_tretu:' ، tsla_total_tretu)new_df ['wst_tretu'] = new_df. wst_retu*new_df. wst_tradewst_total_tretu = np. exp (new_df. wst_tretu. sum ())چاپ ('WST_TOTAL_TRETURN:' ، WST_TOTAL_TRETURN)new_df ['googl_tretu'] = new_df. googl_retu*new_df. googl_tradegoogl_total_tretu = np. exp (new_df. googl_tretu. sum ())چاپ ('googl_total_tretu ؛' ، googl_total_tretu)potrfolio_trade_strategy = جمع (tretus_total) / len (tretus_total)". format (potrfolio_trade_strategy))print("Portfolio retu using trade strategy: 10.2%>محاسبه بازده برای خرید و نگه داشتن استراتژی:#محاسبه استراتژی نگه داشتن سهام سهام
log_retus_stock = np. exp (log_retus. sum ())#بازگشت کل استراتژی نگهدارندهlog_retus_stockportfolio_retu = log_retus_stock. mean (محور = 0)
". Format (portfolio_retu))print("Portfolio retu using hold strategy: 10.2%>بازده نمونه کارها با استفاده از استراتژی تجارت: 241. 10 ٪ما می توانیم ببینیم که استراتژی خرید و نگه داشتن با 358 ٪ بازده سالانه بهتر عمل می کند در حالی که استراتژی معاملات 241 ٪ بازده داشت.ما می توانیم بازده هر سهام را با استراتژی خرید و نگه داشتن تجسم کنیم.
شکل ، ax = plt. subplots (figsize = (20،10))
برای c در log_retus:ax. plot (log_retus. index ، 100*(np. exp (log_retus [c] . cumsum ()) - 1) ، برچسب = str (c))ax. set_ylabel ("کل بازده نسبی (٪)")ax. set_xlabel ("دوره زمانی")ax. set_title ('بازگشت نمونه کارها با استفاده از استراتژی Hold')ax. legend (loc = 'بهترین')plt. show ()plt. show ()Furthermore, the information gathered on retus was used for Risk Analysis which was calculated from expected retu (average/ mean retu of the stock) and standard deviation( measurement of risk>بازگشت = log_retus #استفاده از log_retu
plt. figure (figsize = (20،10))plt. scatter (Retus. Mean () ، Retus. std ())plt. xlabel ("بازده مورد انتظار")plt. ylabel ("خطر")plt. title ("Risk Vs. Expected Retu")برای برچسب ، x ، y در zip (بازگشت. columns ، retus. mean () ، retus. std ()):plt. annotate (برچسب،xy = (x ، y) ، xytext = (50 ، 30) ،textcoords = 'نقاط جبران' ، ha = 'راست' ، va = 'bottom' ،ArrowProps = DICT (ArrowStyle = '-' ، ConnectionStyle = 'ARC3 ، RAD = 0. 5'))طرح پراکندگی برای مقایسه بازده مورد انتظار سهام با ریسک آن ایجاد شده است. این به ما کمک می کند تا عامل خطر سهام مختلف را تجسم کنیم.از این پراکندگی می توان نتیجه گرفت که TSLA بالاترین بازده مورد انتظار و بالاترین خطر را دارد. از طرف دیگر ، AMZN کمترین بازده مورد انتظار و کمترین خطر را دارد.
کدام استراتژی سودآورتر است؟
پس از آزمایش هر دو استراتژی ، می توانیم نتیجه بگیریم که خرید و نگه داشتن استراتژی تجارت در سهام AMD و کل نمونه کارها را انجام می دهد.
اما به یاد داشته باشید ، "مانند هیچ یک از تی شرت های یک اندازه متناسب با همه ، به همین ترتیب هیچ استراتژی واحد برای همه کلاس دارایی ها بهتر نیست."نتایج به اشتراک گذاشته شده در بالا برای سهام AMD است ، و ممکن است با سهام AAPL (یا هر سهام دیگری از نمونه کارها شما) همزمان نباشد.
ما باید عملکرد هر سهام نمونه کارها را تحت هر دو استراتژی آزمایش کنیم و سپس استراتژی را انتخاب کنیم که بهترین بازده را برای هر یک داشته باشد.
امور مالی یاهو!
- سرمایه گذاری
- M. Heydt ، Leaing Pandas-Second Edition (2017)
- نوت بوک Jupyter با کد دقیق را می توان در اینجا یافت:
بهترین استراتژی معاملات...
ما را در سایت بهترین استراتژی معاملات دنبال می کنید
برچسب :
نویسنده : صدرا ذوالریاستین
بازدید : 28
تاريخ : جمعه
10 شهريور
1402 ساعت: 22:59