موضوع اصلی :
روند کار :
به این شکل عمل میشود که یک تسکی پس از اجرا ابتدا به ازای هر یک از نماد ها کوعری میزند و لیستی از نماد های ما را دریافت میکند. سپس اولین ای پی آی یعنی تعدیل را از tsetmc صدا میزند و دیتای تمامی نماد ها را یکجا دریافت میکند و بر اساس ایندکس نماد در دیکشنری بر اساس تاریخ تعدیل ها سورت میکند.مرحله بعد در یک فیلد از نوع json تاریخ های تعدیل را برای نماد موردنظر (اگر فیلتری اعمال نشود برای تمامی نماد های فعال) ذخیره میکند تا اطلاعات اصلاح قیمت هارا هم در جایی داشته باشیم. مرحله ی بعد به ازای هر نماد کوعری میزنیم و تمامی ترند ها را دریافت میکنیم به ازای هر ترند بررسی میشود که در روز های جلو تر از ترند مدنظر چه تعدیل ها و افزایش قیمت هایی دریافت شده است(ای پی آی افزایش قیمت هم متقابلا صدا زده میشود) و نسبت ها در هم ضرب میشوند تا نسبت نهایی که باید در قیمت یک ترند ضرب شود بدست بیاید. سپس قیمت قبلی ترید در فیلد old_price و قیمت ضرب شده جدید در close_price ترند جایگزین میشود.
همچین یک حالت revert_action هم در نظر گرفته شده تا در صورت خطا با اجرای این حالت قیمت قبل به فیلد اصلی برگردد.
در فراآیند تغییر قیمت شرط هایی گذاشته شده که درصورت اجرای چندباره تسک ضرب های تکراری در قیمت ها روی هم overright نشود و همچین مشکلاتی از این قبیل اتفاق نیوفتد .
تسک بر روی ۲ نماد تست شده و مطابقت داشته با داده های سایت های دارای قیمت تعدیل
برای نمونه نماد شتران :
و لینک متابیس :
https://metabase.sahmeto.com/question/470-ticker-trends-sum-of-old-price-and-sum-of-close-price-grouped-by-date-day-filtered-by-ticker-and-date