Bash arrays

From binaryoption
Jump to navigation Jump to search
Баннер1

مصفوفات باش: دليل شامل للمبتدئين

مقدمة

مصفوفات باش (Bash Arrays) هي هياكل بيانات تسمح لك بتخزين مجموعة من القيم تحت اسم متغير واحد. تعتبر المصفوفات أداة قوية لتنظيم البيانات ومعالجتها داخل برامج باش. هذا المقال موجه للمبتدئين ويهدف إلى شرح كل ما تحتاج معرفته حول المصفوفات في باش، بدءًا من تعريفها وصولًا إلى العمليات المختلفة التي يمكنك إجراؤها عليها. فهم المصفوفات ضروري لكتابة برامج باش أكثر تعقيدًا وفعالية.

ما هي المصفوفات؟

تخيل أنك تريد تخزين قائمة بأسماء العملات المشفرة المفضلة لديك. بدلاً من إنشاء متغير لكل اسم (مثل `currency1=Bitcoin`، `currency2=Ethereum`، إلخ)، يمكنك استخدام مصفوفة لتخزين جميع الأسماء في مكان واحد. وبالتالي، المصفوفة هي مجموعة مرتبة من العناصر، حيث يمكن الوصول إلى كل عنصر باستخدام فهرسه (index).

تعريف المصفوفات

هناك طريقتان رئيسيتان لتعريف مصفوفة في باش:

  • الطريقة الأولى: باستخدام الأقواس
  ```bash
  my_array=(item1 item2 item3)
  ```
  في هذا المثال، `my_array` هو اسم المصفوفة، و `item1`، `item2`، و `item3` هي العناصر التي تحتوي عليها المصفوفة.  لاحظ أن العناصر مفصولة بمسافات.
  • الطريقة الثانية: باستخدام الفهارس
  ```bash
  my_array[0]=item1
  my_array[1]=item2
  my_array[2]=item3
  ```
  في هذه الطريقة، يمكنك تعيين قيم للعناصر الفردية في المصفوفة باستخدام فهرسها.  تذكر أن فهرس المصفوفة يبدأ من 0.

الوصول إلى عناصر المصفوفة

للوصول إلى عنصر معين في المصفوفة، استخدم اسم المصفوفة متبوعًا بفهرسه داخل أقواس مربعة:

```bash echo ${my_array[0]} # سيطبع item1 ```

لاحظ استخدام `{}` حول اسم المصفوفة والفهرس. هذا ضروري لتجنب الالتباس، خاصةً عند التعامل مع متغيرات باش أخرى.

طول المصفوفة

يمكنك تحديد عدد العناصر في المصفوفة باستخدام الفهرس الخاص `*`:

```bash echo ${#my_array[*]} # سيطبع 3 ```

هذا يعيد عدد العناصر الموجودة في المصفوفة. هذه الخاصية مفيدة جدًا في الحلقات لتكرار عناصر المصفوفة.

العمليات على المصفوفات

باش يوفر العديد من العمليات التي يمكنك إجراؤها على المصفوفات:

  • إضافة عنصر إلى المصفوفة
  ```bash
  my_array[3]=item4
  ```
  سيضيف هذا العنصر `item4` إلى نهاية المصفوفة.
  • حذف عنصر من المصفوفة
  ```bash
  unset my_array[1]
  ```
  سيؤدي هذا إلى حذف العنصر الموجود في الفهرس 1.
  • تقطيع المصفوفة
  تقطيع المصفوفة يسمح لك باستخراج جزء من المصفوفة كـ مصفوفة فرعية.
  ```bash
  my_subarray=("${my_array[@]:1:2}") # يستخرج العناصر من الفهرس 1 (شامل) إلى الفهرس 2 (غير شامل)
  ```
  • دمج المصفوفات
 يمكن دمج مصفوفتين في مصفوفة واحدة باستخدام بناء الجملة التالي:
 ```bash
 combined_array=( "${my_array[@]}" "${another_array[@]}" )
 ```

أمثلة عملية

مثال 1: قائمة بالعملات المشفرة

```bash currencies=(Bitcoin Ethereum Litecoin Ripple) echo "عدد العملات المشفرة: ${#currencies[@]}" for i in "${!currencies[@]}"; do

 echo "العملة رقم $i: ${currencies[$i]}"

done ```

مثال 2: تحليل بيانات الأسعار

لنفترض أن لديك بيانات أسعار عملة مشفرة في مصفوفة:

```bash prices=(100 105 110 108 112) average=$(( $(echo "${prices[*]}" | awk '{ sum = 0; for (i = 1; i <= NF; i++) sum += $i; print sum / NF }' ) )) echo "متوسط السعر: $average" ```

استخدام المصفوفات في تداول الخيارات الثنائية

في سياق تداول الخيارات الثنائية، يمكن استخدام المصفوفات لتخزين:

استراتيجيات تداول متقدمة باستخدام المصفوفات

  • استراتيجية المتوسط المتحرك (Moving Average): يمكن استخدام مصفوفة لتخزين قيم الأسعار الأخيرة وحساب المتوسط المتحرك بناءً عليها.
  • استراتيجية مؤشر القوة النسبية (RSI): يمكن استخدام مصفوفة لتخزين تغيرات الأسعار وحساب مؤشر القوة النسبية.
  • استراتيجية البولينجر باندز (Bollinger Bands): يمكن استخدام مصفوفة لتخزين الأسعار وحساب الانحراف المعياري لإنشاء نطاقات البولينجر.
  • استراتيجية كسر الدعم والمقاومة (Breakout): يمكن استخدام مصفوفة لتخزين مستويات الدعم والمقاومة وتحديد نقاط الدخول والخروج.
  • استراتيجية التداول بناءً على الأنماط (Pattern Trading): يمكن استخدام مصفوفة لتخزين الأنماط السعرية وتحديد فرص التداول.

التحليل الفني وحجم التداول

  • التحليل الفني (Technical Analysis): استخدام المصفوفات لتخزين بيانات الأسعار لحساب المؤشرات الفنية.
  • تحليل حجم التداول (Volume Analysis): استخدام المصفوفات لتخزين بيانات حجم التداول لتحديد قوة الاتجاهات.
  • مؤشر الماكد (MACD): استخدام المصفوفات لتخزين قيم الماكد وحساب إشارات الشراء والبيع.
  • مؤشر ستوكاستيك (Stochastic Oscillator): استخدام المصفوفات لتخزين قيم الستوكاستيك وتحديد مناطق ذروة الشراء والبيع.
  • خطوط فيبوناتشي (Fibonacci Retracements): استخدام المصفوفات لتخزين مستويات فيبوناتشي وتحديد نقاط الدعم والمقاومة المحتملة.

روابط ذات صلة

ابدأ التداول الآن

سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)

انضم إلى مجتمعنا

اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين

Баннер