نمایش نام، کد نماد و تاریخ در خروجی فیلتر
با اطلاعات نماد، تاریخ لحظه و محاسبات، پنج ستون خروجی بسازید و تفاوت مقدار واقعی با نمایش کوتاه اعداد را بررسی کنید.
پیشنیاز: توانایی ساخت فایل فیلتر در طراحی پیشرفته، افزودن بلاک و اتصال خروجی به ورودی؛ آشنایی با جدول نتایج.
هدف تمرین و بلاکهای لازم
در این تمرین یک جدول برای مشاهده داده میسازیم: نام نماد، کد نماد، دو تاریخ و اختلاف آنها. هیچ شرط انتخاب سهم به طراحی اضافه نمیکنیم. تعداد ردیفها به داده و دامنه اجرای شما بستگی دارد؛ این نمونه پیشنهاد خرید یا فهرست سهام برگزیده نیست.
یک فایل از نوع «فیلتر سهامهای بازار» در طراحی پیشرفته بسازید. دو بلاک «اطلاعات نماد» از گروه عمومی، دو «تاریخ لحظه» از تاریخ و ساعت، یک «محاسبات» از ریاضیات، یک «خروجی فیلتر» از خروجی و یک «توضیحات» از عمومی لازم است. نام فایل را مشخص و مستقل انتخاب کنید تا نمونههای دیگر تغییر نکنند.
تنظیم اطلاعات نماد و دو تاریخ
در اطلاعات نماد اول، ویژگی موردنظر را «نماد» و در دومی «کدنماد» انتخاب کنید. خروجی اول نامی مانند ضاطلس060900 و خروجی دوم کدی مانند IROASATF6771 میدهد؛ این دو مقدار در گزارش نمونه دیده شدند. کد نماد را با نام کوتاه نماد یکی نگیرید.
نوع داده هر دو تاریخ لحظه را UnixTime و نوع برگشت به عقب را روز قرار دهید. «برگشت به عقب تقویمی» در اولی ۰ و در دومی ۱ باشد. «ورود تاریخ UnixTime» هر دو را در این نمونه ۰ نگه دارید. پس از خروج از فیلد، بلاک را دوباره انتخاب کنید و ثبت مقدار را کنترل کنید.
UnixTime طبق توضیح ویژگی، تاریخ را بر حسب ثانیه از ابتدای ۱۹۷۰ بیان میکند. برگشت تقویمی را با برگشت یک کندل معاملاتی یکی نگیرید؛ برای نمونه روز تعطیل میتواند در تقویم وجود داشته باشد، اما کندل معامله جدیدی نداشته باشد. این تمرین تبدیل تقویم، منطقه زمانی یا همه حالتهای هفته و ماه را اثبات نمیکند.
چهار ستون اول را متصل کنید
خروجی اطلاعات نماد اول را به ورودی «خروجی فیلتر» بکشید و از منو «ستون 1» را انتخاب کنید. اطلاعات نماد دوم به ستون 2، تاریخ با برگشت ۰ به ستون 3 و تاریخ با برگشت ۱ به ستون 4 وصل شود. هر اتصال را جدا انجام دهید تا مقصد اشتباه انتخاب نشود.
عنوان ستونها را بهترتیب «نام نماد»، «کد نماد»، «تاریخ مبنا» و «یک روز قبل» بگذارید. در ویژگیهای خروجی فیلتر، ستونهای اول و دوم باید منبع اطلاعات نماد و ستونهای سوم و چهارم منبع تاریخ لحظه را نشان دهند. در نمونه، مرتبسازی نماد، نوع صعودی و تعدادخروجی ۰ بود.
اختلاف را پیش از قالببندی جدول محاسبه کنید
در بلاک محاسبات، عملگر «تفریق» را انتخاب کنید. تاریخ با برگشت ۰ به «مقدار 1» و تاریخ با برگشت ۱ به «مقدار 2» وصل شود. روی بوم باید رابطه a-b دیده شود؛ برعکسکردن دو ورودی علامت اختلاف را عوض میکند.
خروجی محاسبات را به ستون 5 خروجی فیلتر وصل کنید و عنوان آن را «اختلاف ثانیه» بگذارید. بهاینترتیب محاسبه با داده ورودی انجام میشود و مجبور نیستید دو عدد کوتاهشده جدول را از هم کم کنید.
در بلاک توضیحات بنویسید: «این تمرین شرط انتخاب سهم ندارد؛ تاریخ تقویمی با کندل فرق دارد.» یادداشت روی بوم برای توضیح طراحی است و به خروجی فیلتر وصل نمیشود. فایل را ذخیره کنید و حذف نشان تغییرات ذخیرهنشده از عنوان فایل را کنترل کنید.
نتیجه مشاهدهشده را چگونه بخوانیم؟
نمونه چهارستونی در گزارش روزانه با تاریخ انتخابشده ۱۴۰۵/۰۶/۱۹ و ساعت ۲۰:۳۰، ۹۵۵ ردیف داشت. دو ردیف نخست نام و کد ضاطلس060900 / IROASATF6771 و ضاطلس060901 / IROASATF6781 را نشان دادند. نام ستون سفارشی با نماد اصلی همان ردیف منطبق بود؛ این مشاهده به معنی تطبیق مستقل همه کدها با شناسنامه بازار نیست.
هر دو ستون تاریخ در جدول به صورت 1.78 B نمایش داده شدند. پس از افزودن تفریق، ستون اختلاف در ردیفهای بررسیشده 86.4 K نشان داد. این نمایش با ۸۶۴۰۰ ثانیه، یعنی یک روز، سازگار است. مشابه بودن دو عدد کوتاهشده تاریخ، برابر بودن مقدار اصلی آنها را ثابت نمیکند.
برای کنترل عددی، در مرحله بعد یک بلاک مقایسه اضافه کردیم: مقدار ۱ از خروجی تفریق، عملگر مساوی، مقدار ۲ برابر ۸۶۴۰۰ و ضریب ۱. خروجی مقایسه را به ستون متصل نکردیم تا شرط انتخاب ردیف باشد. این حالت در تاریخ ۱۴۰۵/۰۶/۱۹ و ساعت ۲۰:۳۰، ۹۵۵ ردیف داد. با تغییر فقط مقدار ۲ به ۸۶۴۰۱ و بازخوانی ثبت آن، همان اجرا صفر ردیف داد. پس اختلاف ۸۶۴۰۰ در این نمونه با کنترل مثبت و منفی تأیید شد، نه فقط از روی نمایش کوتاه جدول.
برای تکرار کنترل، ابتدا نسخه هفتبلاکی نمایش داده را بسازید و سپس مقایسه را بهعنوان بلاک هشتم اضافه کنید. این مرحله برخلاف نسخه اولیه، شرط انتخاب ردیف دارد. در کنترل بعدی، مقدار مقایسه به ۸۶۴۰۰ بازگردانده شد و تاریخ گزارش به ۱۴۰۵/۰۶/۱۸، ساعت ۲۰:۳۰ تغییر کرد؛ گزارش پس از بارگذاری دوباره ۹۵۵ ردیف پذیرفت. این شاهد تساوی اختلاف در دو تاریخ بررسیشده است؛ نتایج را نباید به همه روشهای برگشت تعمیم داد.
کنترل تاریخ ورودی مشخص
برای جداکردن تاریخ ورودی از تاریخ گزارش، در هر دو بلاک تاریخ لحظه مقدار «ورود تاریخ UnixTime» را ۱۷۲۸۰۰ قرار دهید. نوع داده UnixTime، نوع برگشت روز و برگشتهای ۰ و ۱ را حفظ کنید. پس از انتخاب دوباره هر بلاک، ثبت مقدار ورودی را بررسی کنید.
در اجرای ثبتشده با تاریخ گزارش ۱۴۰۵/۰۶/۱۹ و ساعت ۲۰:۳۰، ستون تاریخ اول 172.8 K و تاریخ دوم 86.4 K نمایش داد. شرط اختلاف برابر ۸۶۴۰۰، ۹۵۵ ردیف پذیرفت. برای کنترل مقدار مطلق نیز ورودی اول مقایسه از تفریق به خروجی مستقیم تاریخ اول تغییر کرد؛ با عملگر مساوی، مقدار دوم ۱۷۲۸۰۰ و ضریب ۱، همان ۹۵۵ ردیف پذیرفته شد. این آزمون مقدار خروجی تاریخ اول را مستقل از قالب کوتاه جدول کنترل کرد.
این مرحله دو کنترل جدا دارد: یک بار مقایسه روی اختلاف دو تاریخ و بار دیگر روی خود تاریخ اول. هنگام تکرار، منبع ورودی مقایسه را بازخوانی کنید؛ عوضکردن فقط عدد مقایسه بدون تغییر منبع، آزمون دیگری میسازد. نتیجه نمونه، رفتار همین ورودی و برگشت روزانه را نشان میدهد؛ تقویم نمایشی، منطقه زمانی و برگشت ماهانه یا سالانه از این آزمون تعیین نمیشوند.
اگر نتیجه شما متفاوت بود
ابتدا وجود هر پنج ستون و عنوان صحیح آنها را کنترل کنید. اگر ستون بهجای منبع بلاک مقدار ثابت دارد، اتصال مقصد را بررسی کنید. سپس برگشتهای ۰ و ۱، نوع UnixTime، نوع برگشت روز و ترتیب ورودیهای تفریق را بازخوانی کنید.
تاریخ و ساعت انتخابشده گزارش را همراه نام نماد ثبت کنید. برای مقایسه دو اجرا فقط یک عامل را تغییر دهید و به تعداد ردیف نمونه متکی نباشید. اگر ستون تاریخ کوتاه شده است، از ظاهر برابر آنها نتیجه برابری نگیرید؛ اختلاف را در بلاک محاسبات بخوانید.
تمرین و کنترل نتیجه
همین هفت بلاک و پنج ستون را بسازید، فایل را ذخیره و اجرا کنید. برای دو نماد، نام اصلی ردیف، نام و کد سفارشی، دو تاریخ و اختلاف را یادداشت کنید. ترتیب دو ورودی محاسبات و تنظیمات هر تاریخ را دوباره بخوانید.
نتیجه مورد انتظار: پنج ستون با منبع درست قابل مشاهده باشند و نام سفارشی با نماد اصلی ردیف منطبق باشد. در اجرای ثبتشده اختلاف 86.4 K بود؛ نتیجه اجرای خودتان را با تاریخ و تنظیماتش گزارش کنید و نمایش کوتاه را مدرک برابری دقیق ندانید.