نسبت نمودار بین قیمت دو نماد به راحتی با Amibroker انجام می شود. برای این منظور می توانیم از فرمول داخلی پخش شده موجود در پنجره نمودارها استفاده کنیم:

سپس سبک را به عنوان نسبت انتخاب کنید:

نماد اصلی (Symbol1) یکی از موارد انتخاب شده در پنجره نمودار است ، نماد دیگر (Symbol2) در پنجره Parameters تعریف شده است ، همانطور که در تصویر فوق ارائه شده است.
همچنین می توان با استفاده از کد زیر ، چنین نمودار نسبت را به صورت برنامه ای در AFL ایجاد کرد:
نسبت = خارجی ("Symbol1" ، "C") / خارجی ("Symbol2" ، "C") ؛طرح (نسبت ، "نسبت" ، colorred)
نام های Symbol1 و Symbol2 در کد فوق باید با نام نماد واقعی از پایگاه داده ما که می خواهیم استفاده کنیم جایگزین شود.
مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 7:10 صبح تحت عنوان نظرات در مورد نحوه نشان دادن نسبت قیمت بین دو نماد
25 ژانویه 2016
نحوه خواندن بالاترین ارزش بالای میله های آینده
ساخته شده در توابع HHV و LLV اجازه می دهد تا بالاترین یا کمترین کمترین میله های N-Past را بخوانید. اگر می خواهیم به مقادیر آینده مراجعه کنیم ، یک روش آسان برای انجام این کار با استفاده از عملکرد ساده Ref و فقط تغییر خواندن HHV یا LLV از N-Bars در جلو وجود دارد. یک تابع آماده برای استفاده از چنین رویکردی در زیر ارائه شده است:
// function definitions function futureHHV ( array, periods ) retu Ref ( HHV ( array, periods ), periods );> function futureLLV ( array, periods ) retu Ref ( LLV ( array, periods ), periods );>
// نمونه استفاده از نمونه (نزدیک ، "نزدیک" ، Colordefault ، StyleBar) ؛طرح (HHV (H ، 20) ، "HHV" ، Colorgreen ، Styledashed) ؛طرح (آینده HHV (ساعت ، 20) ، "آینده HHV" ، Colorgreen ، Stylethick) ؛طرح (LLV (L ، 20) ، "LLV" ، colorred ، styledashed) ؛طرح (Futurellv (L ، 20) ، "آینده LLV" ، Colorred ، Stylethick)
و در اینجا نمودار تولید شده توسط فرمول بالا است:

مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 7:25 صبح تحت نظر نشانگرها درباره نحوه خواندن بالاترین ارزش بالای میله های آینده
22 ژانویه 2016
نحوه پر کردن پیش زمینه بین خطوط روند دست کشیده
در میان ابزارهای طراحی داخلی ، مثلث ، مستطیل و بیضی امکان پر کردن پس زمینه را با رنگ سفارشی فراهم می کند. با این حال ، اگر می خواستیم فضای بین خطوط روند دستی به صورت دستی را پر کنیم ، می توانیم از فرمول AFL با عملکرد مطالعه استفاده کنیم که امکان تشخیص موقعیت خط را فراهم می کند. سپس - با دانستن آرایه های خطوط بالا و پایین می توانیم منطقه را با یک نقشه ابر پر کنیم.
یک فرمول نمونه ، که نشان می دهد چنین اجرای در زیر ارائه شده است. این کد فضای بین خطوط L1 و L2 (رنگ قرمز) و بین باند های بالا و پایین کانال رگرسیون (RU و RL Suduct ID) را پر می کند.
// طرح قیمت معمولی (نزدیک ، "نزدیک" ، Colordefault ، StyleBar) ؛
// عملکرد تعریف عملکرد سفارشی FILLSPACE (ID1 ، ID2 ، COLOR) // دریافت نمودار فعلی شناسه chartid = getChartId () ؛
// موقعیت های خطوط L1 = مطالعه (ID1 ، ChartID) را بخوانید. L2 = مطالعه (id2 ، chartid) ؛
// draw cloud chart PlotOHLC ( l1 , l1 , l2 , l2 , "" , ColorBlend ( color , GetChartBkColor () ), styleCloud | styleNoRescale | styleNoLabel , Null , Null , 0 , - 1 );>
// عملکرد تماس و مراجعه به Fillspace شناسه مطالعه اختصاصی ("L1" ، "L2" ، Colorred) ؛Fillspace ("RU" ، "RL" ، ColorBlue)
نمودار تولید شده توسط فرمول به شرح زیر است:

باید به یاد داشته باشیم که هر خط باید دارای شناسه مطالعه منحصر به فرد در پنجره Properties باشد.

در مورد کانال رگرسیون ، شناسه خطوط بالا و پایین در برگه کانال رگرسیون تعریف می شود:

اگر می خواستیم خطوط بیشتری را اداره کنیم ، ممکن است پردازش لیست شناسه مطالعه به جای تماس های عملکردی فردی ، کاربردی تر باشد.
// طرح قیمت معمولی (نزدیک ، "نزدیک" ، Colordefault ، StyleBar) ؛
// عملکرد تعریف عملکرد سفارشی FILLSPACE (ID1 ، ID2 ، COLOR) // دریافت نمودار فعلی شناسه chartid = getChartId () ؛
// موقعیت های خطوط L1 = مطالعه (ID1 ، ChartID) را بخوانید. L2 = مطالعه (id2 ، chartid) ؛
// draw cloud chart PlotOHLC ( l1 , l1 , l2 , l2 , "" , ColorBlend ( color , GetChartBkColor () ), styleCloud | styleNoRescale | styleNoLabel , Null , Null , 0 , - 1 );>
function BulkFill ( IDlist , color ) for( i = 0 ; ( ID1 = StrExtract ( IDlist , i ) ) != "" ; i += 2 ) ID2 = StrExtract ( IDlist , i + 1 ); FillSpace ( ID1 , ID2 , color );>>
// عملکرد تماس و مراجعه به FulkFill شناسه مطالعه اختصاصی ("L1 ، L2 ، RU ، RL ، R1 ، R2" ، Colorred)
مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 2:56 بعد از ظهر تحت عنوان "نظرات در مورد نحوه پر کردن پیش زمینه بین خطوط روند دستی دستی
16 ژانویه 2016
خطوط پشتیبانی و مقاومت خودکار بر اساس آخرین مقدار HHV و LLV
در این مثال ما روشی را برای ترسیم خطوط پشتیبانی خودکار و مقاومت بر اساس Highs/Lows که اخیراً ضربه خورده است ارائه خواهیم داد. به منظور ترسیم خطوط افقی که سطح مقادیر اخیر HHV/LLV را نشان می دهد و در نقطه نمودار شروع به ترسیم می کند ، که سطح قیمت را مشخص می کند - ابتدا باید نوار را شناسایی کنیم ، جایی که باید خط شروع شود. این کار را می توان با استفاده از توابع HHVBARS / LLVBARS انجام داد.
این توابع امکان می دهد تعداد میله هایی را که از زمان تعیین سطح پشتیبانی یا مقاومت ما عبور کرده اند ، پیدا کنیم ، بنابراین می توانیم از ترسیم خطوط قبل از این نقاط جلوگیری کنیم.
این مثال نحوه ترسیم خطوط پشتیبانی و مقاومت را بر اساس سطح HHV/LLV نشان می دهد:
// تعریف عملکرد قابل استفاده مجدد عملکرد SUPRESLEVELS (میله ها ، رنگ آمیزی ، colordn) bi = barindex () ؛LVBI = LastValue (BI) ؛
// retu HHV value only for bars starting from the bar where HHV level was established hv = IIf ( bi>= LVBI - LastValue (HHVbars (High ، Bars)) ، LastValue (HHV (High ، Bars)) ، NULL) ؛
// the same approach for LLV lv = IIf ( bi>= LVBI - LastValue (llvbars (کم ، میله)) ، LastValue (LLV (کم ، میله)) ، تهی) ؛
// plot levels Plot ( hv , "hv" , colorUp , styleDashed ); Plot ( lv , "lv" , ColorDn , styleDashed );>
// طرح طرح قیمت (نزدیک ، "نزدیک" ، Colordefault ، StyleBar) ؛
// عملکرد تماس با پارامترهای مختلف SUPRESLEVES (10 ، Colorgreen ، colorred) ؛Supreslevels (50 ، Colorgreen ، Colorred)
نمودار زیر خروجی تولید شده توسط فرمول را نشان می دهد:

مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 12:06 صبح تحت نمودار کردن نظرات در مورد خطوط پشتیبانی خودکار و مقاومت بر اساس آخرین ارزش HHV و LLV
29 نوامبر 2015
نحوه اجرای بخشی از فرمول فقط در صورت اضافه شدن نوار جدید
در شرایط واقعی ممکن است ما علاقه مند به اجرای برخی از بخش های فرمول ما فقط یک بار در هر نوار ، هنگامی که یک نوار جدید ایجاد می شود (به عنوان مثال برای اهداف تجارت خودکار یا فقط برای اطلاع رسانی). برای انجام این کار - ما باید لحظه ای را که نوار جدید ظاهر می شود ، شناسایی کنیم.
این کار می تواند با استفاده از متغیرهای استاتیک انجام شود تا جدول زمانی جدیدترین نوار را ضبط کند ، سپس خواندن فعلی را با مقدار ضبط شده مقایسه کنید. پس از تشخیص تفاوت - ما می توانیم به طور مشروط کد خود را اجرا کنیم و اطلاعات زمان ضبط شده را به روز کنیم.
چنین رویکردی در صورت استفاده از زمانی که با هر تیک تغییر نمی کند ، کار خواهد کرد ، بنابراین گزینه ترجیحی استفاده از زمان شروع فاصله برای نمایش زمان سنج (برای فواصل روزانه و بالاتر ما باید جعبه "نادیده گرفته" را علامت گذاری کنیم):

سپس می توانیم از کد زیر استفاده کنیم (این فرمول نمونه فقط هنگام تشخیص نوار جدید ، صدای سیستم ding. wav را پخش می کند):
// خواندن آخرین تاریخ نوار/زمان LastBartime = LastValue (DateTime ()) ؛
// ما از متغیر per-symbol استفاده می کنیم // اگر می خواهید // برای استفاده از فرمول در چندین نمودار نشان داده شده در همان زمان vaame = name () + "_lastdt" استفاده کنید.
// خواندن تاریخ/زمان ضبط شده از آخرین اجرای RecordedTimestamp = NZ (staticVarget (vaame)) ؛
// کد فقط در صورت تشخیص نوار جدید (LastBartime! = RecordedTimestamp) به طور مشروط اجرا می شود // ضبط نوار جدید DateTime Staticvarset (Vaame ، LastBartime) ؛
// نمونه کد نشانگر نمونه (نزدیک ، "نزدیک" ، Colordefault ، StyleBar)
Newer AmiBroker versions (>5. 60) می تواند از این مورد برای خواندن آخرین نوار زمان استفاده کند (این سریعتر از استفاده از عملکرد DateTime () است). LastBartime = وضعیت ("LastBarend")
مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 12:19 صبح تحت نظر نشانگرها در مورد نحوه اجرای بخشی از فرمول فقط در هنگام اضافه شدن نوار جدید
7 اکتبر 2015
نحوه افزایش حداکثر دوره شاخص های داخلی
شاخص ها و میانگین های داخلی که با Amibroker ارسال می شوند ، از تماس های Param () استفاده می کنند تا امکان تنظیم مقادیر پارامتر را از طریق پنجره پارامترها فراهم کنند. عملکرد PARAM در کد مقادیر پیش فرض ، حداقل و حداکثر را برای آرگومان های ورودی مشخص می کند.
ترتیب آرگومان ها در عملکرد Param به شرح زیر است:
param ("name" ، defaultval ، min ، max ، step ، sincr = 0
در شرایط خاص ، ما ممکن است بخواهیم از تنظیمات دوره بزرگتر از حداکثر از پیش تعریف شده استفاده کنیم. یک روش آسان برای تنظیم کد برای دستیابی به چنین کار وجود دارد. بگذارید از نشانگر و تنظیم قیمت داخلی (همه در یک) استفاده کنیم. 200 یا 300 دوره برای باندهای بولینگر (حداکثر پیش فرض 100).
برای اصلاح کد اساسی ، ما باید:
- با دکمه سمت راست ماوس روی نمودار کلیک کنید و برای تهیه ویرایشگر کد AFL ، فرمول ویرایش را از منوی زمینه انتخاب کنید
- در کد ، بخش باند بولینگر و تماس عملکرد Param را برای تعیین تعداد دوره ها شناسایی کرده و آن را از 200 به 300 تغییر دهید همانطور که در تصویر زیر نشان داده شده است.

اکنون می توانیم به گفتگوی پارامترها برگردیم و قادر خواهیم بود دوره های Bollinger Bands را تنظیم کنیم تا 300 دوره را تنظیم کنیم.
مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 7:30 صبح تحت نظر نشانگرها در مورد چگونگی افزایش حداکثر دوره شاخص های داخلی داخلی
5 اکتبر 2015
نحوه مرور نمودارها در محدوده تاریخ انتخاب شده
به منظور انتخاب طیف وسیعی از تاریخ ها در نمودار تاریخی ، سپس از طریق تاریخچه تیک ها پیمایش کنید ، می توانیم دامنه تاریخ هایی را که علاقه مند به استفاده از نشانگرهای دامنه هستیم (بر روی نمودار دو بار کلیک کنید یا میله ها را علامت بزنید و F12 را تغییر دهید ، تغییر دهید.+F12).

Then, use View>Zoom>منوی دامنه برای بزرگنمایی نمودار به انتخاب دامنه ما.

We can also assign a keyboard shortcut to View>Zoom>Range command or create a custom toolbar button to have it easily accessible (e.g. CTRL+SHIFT+R). This can be done in Tools>سفارشی سازی (http://www.amibroker.com/guide/h_customizeui.html)
بعد از اینکه نماد را تغییر می دهیم ، در شرایطی که نمودار به عنوان مثال تغییر می کند. با توجه به طول تاریخ متفاوت در این نمادها - تنها کاری که باید انجام دهیم این است که به Ctrl+Shift+R ضربه بزنیم تا نمای را به دامنه مورد نظر خود برگردانیم.
مرور در لیست نمادها می تواند با اسکریپت ها بیشتر خودکار شود. در زیر یک اسکریپت بازی خودکار نمونه ای وجود دارد که به طور خودکار از طریق لیست نمادها مرور می شود و زوم را به تاریخ هایی که در کد تعیین می کنیم تنظیم می کند. تنها چیزی که ما نیاز داریم فقط برای شروع اسکریپت و تماشای آن همه سوئیچینگ به صورت خودکار و بدون هیچ گونه اقدامات دستی مورد نیاز است.
در اینجا یک اسکریپت نمونه وجود دارد که از طریق لیست نمادها مرور می شود و بزرگنمایی را برای نمایش سال 2010 تنظیم می کند:
iWatchList = 0 ؛/ * می توانید شماره لیست تماشای را در اینجا تعریف کنید */
AB = ActiveXObject جدید ("Broker. Application") ؛qty = ab. سهامشمردن ؛
برای (i = 0 ؛ i
if (iwatchlist<32 ) if ( Stk . WatchListBits & ( 1 AB . ActiveDocument . Name = Stk . Ticker ; AW = AB . ActiveWindow ; AW . ZoomToRange ( "2010-01-01" , "2011-01-01" ); WScript . Sleep ( 2000 ); // 2 seconds delay>> else if ( Stk . WatchListBits2 & ( 1 AB . ActiveDocument . Name = Stk . Ticker ; AW = AB . ActiveWindow ; AW . ZoomToRange ( "2010-01-01" , "2011-01-01" ); WScript . Sleep ( 2000 ); // 2 seconds delay>>
برای استفاده از کد فوق این مراحل را دنبال کنید:
- دفتر یادداشت باز
- کپی چسباندن بالای کد
- فایل را با پسوند . js ذخیره کنید (این بدان معنی است که سیستم این را به عنوان کد JScript رفتار می کند)
- اطمینان حاصل کنید که Amibroker با نمودار مورد نظر به عنوان فعال در حال اجرا است
- برای اجرای کد JScript بر روی پرونده . js دوبار کلیک کنید
نکته مهم: اگر ویندوزهای 64 بیتی را اجرا می کنید و هر دو نسخه 32 بیتی و 64 بیتی Amibroker را نصب کرده اید ، اسکریپت های OLE را به طور پیش فرض نصب می کنید ، فقط با نمونه 64 بیتی صحبت می کنید. برای استفاده از نسخه 32 بیتی در عوض ، باید توصیه های ارائه شده در این مقاله را دنبال کنید: http://www.amibroker.com/kb/2015/01/12/ole-automation-scriptts-with-32-and-64-بیتی/
شایان ذکر است که طی کردن سری نمودارها تنها راه مقایسه عملکرد نمادهای مختلف در طول زمان نیست. ابزارهای ساخته شده اختصاصی دیگری برای مقایسه چندین اوراق بهادار (بدون تغییر نمادها ، اما در یک پنجره نمودار) ، از جمله قیمت (خارجی) و نشانگر عملکرد نسبی وجود دارد. این ویژگی ها در فیلم زیر نشان داده شده است: http://www.amibroker.com/video/twosymbolsonechart.html
مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 7:04 صبح تحت نظر نمودار نظرات در مورد نحوه مرور نمودارها در محدوده تاریخ انتخاب شده
2 اکتبر 2015
نحوه انتقال یک پنجره به مانیتور دیگر
به طور پیش فرض ویندوز مانند نمودارها ، تجزیه و تحلیل ، مدیر حساب ، تحقیقات وب همه در داخل پنجره اصلی قاب Amibroker باز است. در تنظیمات چند مانیتور ، ممکن است مفید باشد که برخی از آنها را به صفحه دیگری منتقل کنید.
Let us say we want to move Analysis window to second monitor screen. This can be done by switching the window to special “Floating” mode by using Window>گزینه شناور از منو پس از تجزیه و تحلیل.

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

دقیقاً همان روش برای نمودارهای ویندوز ، مدیر حساب یا ویندوزهای تحقیق وب کار می کند.
روش (برای پنجره نمودار) نیز در این ویدیو نشان داده شده است: http://www.amibroker.com/video/floatandlink.html
مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 6:48 بعد از ظهر تحت نظر رابط کاربری در مورد نحوه انتقال یک پنجره به مانیتور دیگر
30 سپتامبر 2015
توطئه های منطقه موقعیتی در پشت خطوط شبکه
هنگامی که می خواهیم پس زمینه را با رنگ های سفارشی نقاشی کنیم تا حالت ها یا شرایط خاصی را نشان دهیم - می توانیم برای این منظور از سبک توطئه های منطقه استفاده کنیم. مثال کد ارائه شده در زیر پس زمینه سبز نشان می دهد وقتی که نزدیک بالای 50 دوره در حال حرکت به طور متوسط و قرمز در زیر MA-50 است.
طرح (نزدیک ، "نزدیک" ، Colordefault ، Stylethick) ؛طرح (MA50 = MA (نزدیک ، 50) ، "MA50" ، ColorBlue ، Stylethick) ؛
color = IIf ( Close>MA50 ، Colorgreen ، colorred) ؛طرح (1 ، "" ، رنگ ، Stylearea | Styleownscale ، 0 ، 1)
با این حال - به طور پیش فرض هر دو خط شبکه و خط انتخابی تحت پوشش طرح منطقه قرار می گیرند:

یک رفع آسان برای آن وجود دارد-Amibroker اجازه می دهد تا موقعیت محور z را نیز مشخص کند ، بنابراین می توانیم با استفاده از استدلال z-orge از عملکرد نقشه ، دید و ترتیب توطئه ها (از جمله موقعیت آنها در برابر شبکه ها و سایر عناصر) را تغییر دهیم.
اگر استدلال مرتبه z را ب ه-1 مشخص کنیم ، این بدان معنی است که ما طرح خاص را یک سطح به عقب منتقل می کنیم و این نیز در زیر شبکه ها قرار می گیرد.
طرح (نزدیک ، "نزدیک" ، Colordefault ، Stylethick) ؛طرح (MA50 = MA (نزدیک ، 50) ، "MA50" ، ColorBlue ، Stylethick) ؛
color = IIf ( Close>MA50 ، Colorgreen ، colorred) ؛طرح (1 ، "" ، رنگ ، Stylearea | Styleownscale ، 0 ، 1 ، 0 ،- 1) ؛// آرگومان هشتم z-orde را مشخص می کند

اطلاعات بیشتر در مورد استفاده از Z-order را می توان در راهنمای کاربر یافت: http://www.amibroker.com/guide/h_indbuilder2.html
مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 10:23 صبح تحت نظر نشانگرها در مورد توطئه های منطقه موقعیت در پشت خطوط شبکه
29 آگوست 2015
نحوه اضافه کردن برچسب های نماد به نمودار عملکرد نسبی
نمودار عملکرد نسبی داخلی به ترتیب در عنوان نمودار نام نماد را نشان می دهد. با این حال - نمایش برچسب نماد در کنار خط ترسیم شده برای شناسایی آسان تر ممکن است عملی باشد. این کار به راحتی می تواند با عملکرد Plottext یا PlottextSetSetFont انجام شود.
یک کد نمونه که چنین اصلاحاتی را در زیر ارائه می دهد. اندازه قلم برچسب ها را می توان از طریق گفتگوی پارامترها تغییر داد.
_n (TickerList = ParamStr ("Tickers" ، "^dji ، msft ، ge")) ؛fontsize = param ("اندازه قلم برچسب" ، 10 ، 4 ، 30 ، 1) ؛FVB = وضعیت ("FirstVisibleBar") ؛
برای (i = 0 ؛ (نماد = Strextract (نام () + "،" + TickerList ، i))! = "" ؛ i ++) fc = خارجی (نماد ، "C") ؛
if (! isNull (fc [0])) relp = 100 * (fc - fc [fvb]) / fc [fvb] ؛طرح (RELP ، نماد ، رنگ = ColorlightOrange + ((2 * I) ٪ 15) ، Styleline) ؛
x = lastValue (barindex ()) + 1 ؛y = lastValue (RELP) ؛
PlotTextSetFont ( symbol , "Arial" , fontsize , x , y , GetChartBkColor (), color , - fontsize / 2 );>>
PlotGrid ( 0 , colorYellow ); _N ( Title = "> - Relative Performance [%]:>" )

مقالات مرتبط:
ثبت شده توسط Tomasz Janeczko در ساعت 4:35 بعد از ظهر تحت برنامه ریزی نظرات در مورد نحوه اضافه کردن برچسب های نماد به نمودار عملکرد نسبی
معاملات FX...
ما را در سایت معاملات FX دنبال می کنید
برچسب :
نویسنده : شهلا ریاحی
بازدید : <-PostHit->
تاريخ : شنبه
20 خرداد
1402 ساعت: 17:16