استراتژی حرکت از "سهام در حال حرکت" در پایتون

ساخت وبلاگ

در این پست ما به استراتژی حرکت از کتابهای آندریاس اف. کلنو در حال حرکت خواهیم پرداخت: ضرب و شتم بازار با استراتژی حرکت صندوق پرچین و عملکرد خود را با استفاده از مجموعه داده های بدون تعصب بقا که در آخرین پست من ایجاد کردیم.

استراتژی های حرکت تقریباً بر خلاف استراتژی های معنادار است. یک استراتژی حرکت معمولی ، سهام را خریداری می کند که روند صعودی را نشان می دهد به امید اینکه روند ادامه یابد. استراتژی حرکت تعریف شده در معاملات کتابهای Clenow بر اساس قوانین زیر:

  • هفته ای یک بار تجارت کنید. در کتاب خود ، کلنو هر چهارشنبه معامله می کند ، اما همانطور که او خاطرنشان می کند ، آن روز کاملاً خودسرانه است.
  • سهام را در S& P 500 بر اساس حرکت قرار دهید. حرکت با ضرب شیب رگرسیون نمایی سالانه 90 روز گذشته با ضریب R^2 $ محاسبه محاسبه رگرسیون محاسبه می شود.
  • اندازه موقعیت با استفاده از میانگین متوسط 20 روزه واقعی هر سهام محاسبه می شود که با 10 نقطه پایه مقدار نمونه کارها ضرب می شود.
  • اگر S& P 500 بالاتر از میانگین حرکت 200 روزه خود باشد ، فقط موقعیت های جدید را باز کنید.
  • هر هفته ، به دنبال فروش سهام هایی باشید که در رده بندی برتر 20 ٪ برتر قرار ندارند ، یا زیر میانگین حرکت 100 روزه خود قرار گرفته اند. سهام خود را در رتبه بندی های برتر 20 ٪ برتر با پول نقد باقی مانده خریداری کنید.
  • هر هفته دیگر ، موقعیت های موجود را با مقادیر متوسط محدوده واقعی به روز کنید.

قبل از اینکه استراتژی را پشت سر بگذاریم ، بیایید به فرمول های اندازه و موقعیت موقعیت بپردازیم.

تکانه

همانطور که در بالا ذکر شد ، حرکت با ضرب شیب رگرسیون نمایی سالانه 90 روز گذشته با ضریب R^2 $ محاسبه رگرسیون محاسبه می شود. برای دیدن این امر در عمل ، بیایید به بالاترین مقادیر حرکت اندازه گیری شده در مجموعه داده ما نگاه کنیم. ابتدا باید در مجموعه داده بارگذاری کنیم:

از جانب زمان قرار وارد كردن زمان قرار وارد كردن پاندا as pd وارد كردن matplotlib. pyplot as PLT وارد كردن اعماق as np %منگوله درون خطی PLT.rcparams["شکل. figsize"] = (10, 6) # (W ، H) PLT.منزوی() 
تیک تیک = pd.read_csv("بدون بازمانده/Tickers. csv", سرتیتر=هیچ یک)[1].به لیست() سهام = ( (pd.با هم توافق کردن( [pd.read_csv(f"بدون بازمانده/تیک زدن>. csv ", index_col='تاریخ', parse_dates=درست است، واقعی)[ 'بستن' ].نام بردن(تیک زدن) برای تیک زدن in تیک تیک], محور=1, مرتب سازی=درست است، واقعی) ) ) سهام = سهام.محل[:,~سهام.ستون ها.کپی شده()] 

اکنون بیایید عملکرد اندازه گیری حرکت خود را ایجاد کنیم. ما می توانیم با انجام رگرسیون خطی در سیاهههای طبیعی بسته های روزانه سهام ، رگرسیون نمایی یک سهام را محاسبه کنیم:

از جانب scipy. stats وارد كردن رشوه دنباله تکانه(بسته شدن): بازگرداندن = np.ورود به سیستم(بسته شدن) x = np.در بیداد کردن(لن(بازگرداندن)) شیب, _, rvalue, _, _ = رشوه(x, بازگرداندن) برگشت ((1 + شیب) ** 252) * (rvalue ** 2) # شیب را سالانه کنید و در R^2 ضرب کنید 

اکنون می توانیم یک محاسبه تکانه 90 روزه را برای همه سهام در جهان خود اعمال کنیم:

تکانه ها = سهام.کپی  استراتژی های مؤثر فارکس...

ما را در سایت استراتژی های مؤثر فارکس دنبال می کنید

برچسب : نویسنده : توران میرهادی بازدید : <-PostHit-> تاريخ : پنجشنبه 9 شهريور 1402 ساعت: 23:02