وبرمجة البرمجــة المــنــزوعة هي تقنية ذات صبغة رياضية قوية تستخدم على نطاق واسع في الهندسة المالية، ولا سيما في مجال تحسين الحافظة، وتشمل متغيرات القرار التي تُقيد لتصبح مطهرة، مما يجعلها مثالية للمشاكل التي تتطلب خيارات متفاوتة، مثل اختيار الأصول أو مستويات الاستثمار، وذلك بإدراج قرارات متضاربة، وبرمجة التعبئة مع واقع الأسواق المالية - حيث تنطوي المعاملات على نماذج شاملة على وحدات، واستثمارات متفاؤلية، ومفاهيم.

فهم أفضل استخدام في مجال الموانئ

ويرمي تحسين الحوافظ إلى تخصيص الأصول على نحو يزيد من العائدات إلى أقصى حد مع التقليل إلى أدنى حد من المخاطر، في حين أن الإطار المتوسط الأجل الذي أدخله هاري ماركوفيتز في عام 1952 لا يزال يشكل الأساس لنظرية الحافظة الحديثة، وفي هذا النهج، يسعى المستثمر إلى إيجاد مجموعة من الأوزان التي تقلل من الفروق في الحافظة بالنسبة لعودة متوقعة، أو ما يعادل ذلك، فإن نموذج ماركويتز المستمر يفترض أن الاستثمار في مستوى معين من المخاطر.

ويجب أن تُواجه إدارة حافظة الأوراق المالية العملية قيوداً منفصلة مثل:

  • Minimum investment amounts] that require a certain dollar value per asset.
  • Lot size restrictions] where assets trade in specific multiples (e.g., round lots of 100 shares).
  • Cardinality constraints] limiting the total number of assets held.
  • Buy-in thresholds] where an asset must be held at a minimum weight if it is included at all.
  • Transaction cost structures] that are piecewise linear or fixed-cost based on discrete trading decisions.

وهذه الجوانب المتباينة تجعل النماذج ذات الاستخدام الأمثل المستمر غير كافية، وتوفر البرمجة المتأنقة إطارا رياضيا صارما لإدراج هذه القيود مباشرة في مشكلة تحقيق الحد الأمثل.

دور برمجة Integer في الهندسة المالية

وتنطبق الهندسة المالية على الطرق الرياضية والحسابية لحل المشاكل في التمويل، وتتناسب البرمجة المتطورة مع الطبيعة لأن العديد من القرارات المالية متباينة بطبيعتها: ما إذا كان ينبغي إدراج أصل أو عدد العقود التي تبرم في التجارة أو التي تستخدم أدوات التحوط، خلافاً للبرمجة الخطية أو الرباعية التي تُغفل الاستمرارية المتغيرة، أو استخدامات البرمجة المتطورة [FxiLT:] [.]

المتغيرات الملزمة واختيار الأصول

والمتغيرات الملزمة هي مجموعة من مشاكل اختيار الأصول، ففي حالة كل من الأصول المرشحة، يشير متغير ثنائي إلى الإدراج (1) أو الاستبعاد (0) ويمكن التعبير عن الوظيفة الموضوعية والقيود من حيث هذه القرارات الثنائية، فعلى سبيل المثال، قد يرغب الصندوق في اختيار مجموعة فرعية من 20 مخزونا من كون مؤهل يبلغ 500 صنف، والقيد الذي يُختار بالضبط 20 أصولا هو مجموع خطي من المتغيرات الثنائية التي تُعد 20 فرزا على النحو الأمثل.

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

Integer Variables for Investment Quantities

وتحدد متغيرات الرش عدد الوحدات التي تشتري لكل موجود، وهذا أمر حاسم عندما تعالج الحد الأدنى من أحجام القطع أو القيود التي تنجم عن القواعد التجارية واعتبارات السيولة، فعلى سبيل المثال، إذا كانت تداولات الأوراق المالية بمجموعات متعددة تبلغ 100 حصة، يجب أن يكون عدد الأسهم المحتفظ بها متعدداً من 100 حصة، وتمنع هذه القيود تخصيص حصص من الأسهم في كثير من الأحيان لا يسمح بها في حسابات السمسرة الثابتة الموحدة.

وبالإضافة إلى ذلك، يمكن أن تمثل متغيرات البخار عدد العقود في الاستراتيجيات المشتقات، وقد يتطلب برنامج كتابة المكالمات المشمول، على سبيل المثال، عدد خيارات الاتصال التي تباع لتكون ثلاجة ولا تتجاوز عدد الأسهم المحتفظ بها، وهذه الروابط المتباينة معبرا عنها بمتغيرات المبيدات.

Handling Real-World Constraints

وبالإضافة إلى القرارات البسيطة المتعلقة باختيار الموجودات وكميتها، يمكن أن تتضمن برامج التبريد مجموعة واسعة من قواعد الاستثمار العملية:

  • Turnover constraints]: Limiting the fraction of portfolio bought or sold can be modeled with binaryتغييرات التي تبين ما إذا كانت التجارة تحدث، إلى جانب متغيرات متبقية للمبلغ المتاجر به.
  • Sector exposure limits]: يمكن للمتغيرات البنائية أن تُنفِّذ أنه يتم اختيار أصل واحد في معظمه لكل قطاع، أو أن وزن القطاع يبقى ضمن نطاق واسع.
  • Threshold constraints]: لا يمكن الاحتفاظ بالموجودات إلا إذا تجاوز وزنها حدا أدنى، ويتم ذلك بربط متغير وزن مستمر بمؤشر ثنائي.
  • Tax considerations: Lot selection for tax-loss harvesting involves integer choices to determine which specific tax lots to sell.

والمرونة التي تتيح إدراج هذه القيود في العالم الحقيقي تجعل البرمجة القائمة على التوليد حجر الزاوية في نظم التجارة الكيميائيــة وتشييد الحافظات.

Formulating the Integer Programming Model

ويتكون نموذج البرمجة المتطورة للحافظة على الوجه الأمثل من وظيفة موضوعية ومجموعة من القيود الخطية، مع قصر بعض أو جميع متغيرات القرار على قيم البخار، ويمكن التعبير عن الصياغة العامة على أنها:

Maximize (أو Minimize) f(x) subject to A x راء، l × / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /

The where x is the vector of decision variables, A] is the constraint fisheries, b is the right-hand side combinationor, and setI:

الوظائف الموضوعية

ويمكن في الممارسة العملية اختيار الهدف الذي يضاهي أهداف المستثمر:

  • تحقيق أقصى قدر ممكن من العودة المتوقعة رهناً بميزانية المخاطر، وهذا هدف خطي إذا ما ثبتت العائدات المتوقعة.
  • Minimize portfolio variation] (أو انحراف معياري) رهناً بعودة مستهدفة، وهذا يؤدي إلى هدف رباعي يؤدي إلى برنامج رباعي مختلط.
  • تحقيق أقصى قدر من العودة المعدلة حسب المخاطر مثل نسبة شارب، التي هي نسبة من وظيفتين خطيتين وتتطلب إعادة صياغة متخصصة.
  • Minimize tracking error] relative to a standard, often with a cardinality constraint on the number of papers.

ويؤثر اختيار الهدف تأثيرا كبيرا على الصعوبة الحسابية، إذ أن الأهداف المتسلسلة أسهل عموما، في حين أن الأهداف الرباعية تتطلب مذيبات أكثر تقدما.

القيود

وتشمل القيود النموذجية في نموذج حافظة البرامج غير المزودة بمقياس للجرعات ما يلي:

  • Budget constraint]: Sum of investments equals total capital. For integer lot sizes, the budget constraint may involve an integer variable multiplied by the lot price.
  • Cardinality constraint]: Sum of binary asset-selection variables ”K" (maximum number of assets).
  • Lower bound on asset weight: إذا أدرجت الأصول I، وزنها L-i. This uses a binary variable to turn the constraint on or off.
  • Upper bound on asset weight]:نفس المنطق مع المتغيرات الثنائية لإنفاذ الحد الأقصى للحيازة.
  • Sector or factor exposure constraints]: linear combinations of decision variables bounded above and below.
  • Transaction cost constraints]: يمكن وضع نموذج للتكاليف الثابتة لكل تجارة باستخدام متغيرات ثنائية تحمل تكلفة إذا حدثت تجارة.

والكثير من هذه القيود هي قيود متتالية، مع الحفاظ على هيكل البرمجة المتباينة في البروتر عندما يكون الهدف خطياً، أو نظام ميكروك بي عندما يكون صغيراً.

نموذج العينات

(ب) النظر في مشكلة مبسطة لاختيار الحافظة مع الأصول الوطنية، والسماح لـ (x) بأن يكون الوزن المستمر للموجودات، أي (الوفاة بالثروة)، و(ي) متغير ثنائي يبين ما إذا كانت الموجودات معيّنة، وقد يبدو النموذج:

[[FLT: {]Minimize / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / // / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /

هذا برنامج رباعي مختلط، فالقيود التي تربط بين (سي) و(ي) تضمن أن يكون وزن (س) صفراً إذا كان وزن (س) صفراً، وإذا كان وزنه (ي) = 1، فإن الوزن مُقيد بين (ل.ي) و(يو.

Solving Integer Programming Models

ونماذج البرمجة في مجال التبريد هي نماذج برمجة مستمدة من الناتج القومي الإجمالي عموما، مما يعني أنه مع تزايد عدد متغيرات التبريد، فإن أسوء وقت للحل يمكن أن يزيد بشكل مكثف، غير أن المذيبات الحديثة تستخدم تقنيات متطورة لحل العديد من المشاكل التي تكاد تكون متطورة عمليا، والأساليب الرئيسية هي الفرع والربط، والطائرات المقطعة، والأوبئة.

الفرع والجنيه

فالفرع والمقيد هو العمود الفقري لمذيبات البرمجة المختلطة، فالخوارزمية تعمل عن طريق حل سلسلة من أنواع الاسترخاء أو الاسترخاء المستمر (حيث يتم إسقاط القيود على البخار) ثم تفرع متغيرات البخار التي تأخذ قيماً مجزأة في التهدئة، وبالنسبة لكل فرع، فإن اللزوم يحسب؛ وتُجرى الفروع التي تكون أسوأ من أفضل الحلول القائمة في مجال الاختراق.

قطع طرق الكوكب

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

Heuristics and Metaheuristics

وبالنسبة للحوافظ الكبيرة جدا أو ضيق الوقت، قد تكون الأساليب الدقيقة بطيئة للغاية، وتوفر الظواهر الشمسية حلولا شبه متكاملة بسرعة، وتشمل النهج المشتركة ما يلي:

  • Rounding heuristics]:حل الإسترخاء المستمر ومتغيرات قطع الثلاجة إلى صفر أو 1 استناداً إلى العتبات.
  • Local search]: البدء من حل قابل للتنفيذ واستكشاف تغييرات صغيرة (مثل تبادل موجودات داخل وخارج) لتحسين الهدف.
  • Genetic algorithms and simulated annealing]: population-based or random-walk methods that can handle non-convexities.
  • Lagrangian chillation]: التخفيف من القيود المعقدة واستخدام التدرج دون المتوسط على الوجه الأمثل لإيجاد حلول مزدوجة جيدة، يمكن تحويلها إلى حلول أولية.

وكثيرا ما تنتج هذه الظواهر الهيمنة حلولا عالية الجودة في غضون ثوان، مما يجعلها مناسبة لإعادة التوازن في الحافظات في بيئة تجارية حية.

التنفيذ العملي

وتستلزم نماذج البرمجة المتطورة في الهندسة المالية برامجيات متينة وتقنية، كما أن المذيبات التجارية مثل غوروبي وشركة CPLEX وشركة MOSEK تعرض أحدث ما يمكن من تنفيذ لمقاييس الفصول والقطع وتشمل خصائص محددة في حافظة الأوراق المالية، كما أن البدائل المفتوحة المصدر مثل شبكة المعلومات الجغرافية وشبكة المعلومات الجغرافية وشبكة المعلومات المتعلقة بالمبيدات السحابية متاحة أيضاً ولكنها قد تكون أبطأ في الحالات الكبيرة.

ومن بين النقاط العملية: كثيرا ما تكون لمشاكل تحسين الحافظة ذات هيكل خاص - مثل مصفوفة التفاف منخفضة الدقة أو قيود متفرقة - يمكن للمذيبات أن تستغلها - فإصلاح المشكلة لاستخدام متغيرات أقل من المبردات أو لتكييف المصطلحات الحجرية يمكن أن يحسن الأداء بشكل كبير، فعلى سبيل المثال، فإن استخدام نموذج عامل للعائدات يقلل من عدد المتغيرات اللازمة لنموذج المخاطر.

المزايا والحدود

وتجلب برامج البرمجـة المـُـعدة مزايا لتحقيق الاستخدام الأمثل للحافظة:

  • Realism]: It captures discrete constraints that continuous models ignore, such as minimum buy sizes, lot sizes, and cardinality limits.
  • Optimality]: خلافاً للأساليب التماثلية، يمكن أن تضمن برمجة البخار تحقيق المثلية العالمية (أو احتمال وجود ارتباط دون الأمثل) للمشاكل ذات الحجم المتوسط.
  • Flexibility]: يمكن التعبير عن مجموعة واسعة من المهام والقيود الموضوعية في شكل خطي أو رباعي، مما يجعل الإطار قابلا للتكيف مع ولايات الاستثمار المختلفة.
  • Transparency]: افتراضات وقيود النموذج واضحة ومستنسخة.

غير أن هناك قيوداً ملحوظة:

  • Compputational complexity]: مشاكل البرمجة في مجال الطاقة النووية هي مشاكل في الناتج القومي، بل إن الحالات المتواضعة التي تنطوي على مئات المتغيرات الثنائية يمكن أن تكون صعبة، ويمكن أن يكون الوقت غير متوقع، وهو شاغل يتعلق بالتطبيقات في الوقت الحقيقي.
  • Data sensitivity]: تعتمد عملية تحسين الموانئ على تقديرات العائدات المتوقعة، والفولاذ، والترابطات، ويمكن أن تؤدي أخطاء التقدير الصغيرة إلى حلول مختلفة اختلافا جذريا، وهي ظاهرة معروفة بأكبر قدر من الخطأ، ولا تحل البرمجة المتأنية هذه المسألة في جوهرها؛ وتقترن تركيبات قوية ذات مستوى من عدم اليقين مع شركاء التنفيذ.
  • Large portfolio sizes: بالنسبة لأكونات الآلاف من الأصول، قد تصبح البرمجة الدقيقة غير عملية، وكثيرا ما تكون الطرق الهيمنة أو التحلل ضرورية.
  • Modeling complexity]: Translating real-world rules into linear integer constraints can be tricky and may require binaryتغيير for each rule, exploding problem size.

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

التطبيقات العالمية الحقيقية

وقد طبقت أساليب برمجة البرمجــة في العديد من السياقات المالية التي تتجاوز الاختيار الأساسي للحافظات:

  • Index tracking]: constructing a portfolio of K stocks that minimizes tracking error to a broad index like the Samp;P 500. This is a cardinality-consdratic program, often solved via MIQP.
  • Hedge fund replication]: باستخدام قيود على البخار لتخفيف صورة العائد للمخاطر لاستراتيجية صندوق التحوط مع مجموعة محدودة من الأدوات السائلة.
  • Asset-liability management]: فيما يتعلق بصناديق المعاشات التقاعدية وشركات التأمين، تساعد برمجة البخار على تطابق التدفقات النقدية من الأصول إلى مدفوعات المسؤولية، حيث تتباين استحقاقات السندات.
  • Algorithmic trading execution]: optimizing the sequence and sizing of orders to minimize market impact and transaction costs, often cast as a mixed-integer dynamic program.
  • Risk budgeting:خصص رأس المال المخاطر لمختلف الاستراتيجيات أو فئات الأصول حيث يكون كل تخصيص إما نسبة مئوية ثابتة أو صفر (قرار ملزم).
  • Green portfolio construction]: including environmental, social, and governance (ESG) criteria as binary constraints (e.g., exclude all companies with coal exposure).

Academic literature is rich with case studies. For example, a 2018 paper in Operations Research] demonstrated that a branch-and-cut fixr could solve index tracking problems with up to 1000 stocks and cardinality of 50 within minutes (see ]Bertsimas and Stellato, 2018[Fimgert programming:3]

خاتمة

ومن المتوقع أن يتسع نطاق تطبيق أساليب البرمجة البرمجية، بما يؤدي إلى زيادة فعالية وكفاءة العمليات المالية، وأن يكون من المنتظر أن يتسع نطاق تطبيق هذه الأساليب في مجال الهندسة المالية، وأن يؤدي إلى زيادة فعالية الاستراتيجيات الاستثمارية والعملية، ويكمن مفتاح النجاح في اعتمادها في اختيار حجم المشكلة الصحيحة، والاستفادة من أحدث المذيبات، والاعتراف بمدى توافر الحافظات المالية الحقيقية أو البرمجة المتردية.

For further reading, interested readers can explore the Wikipedia entry on integer programming], the documentation for ]Gurobi Optimizer, or the textbook Integer Programming[FLjob:5] by Portforti,