English Русский
preview
Makale Kodunuzu 10 Dakikada MQL5 Algo Forge'da Yayınlayın: Adım Adım Kılavuz

Makale Kodunuzu 10 Dakikada MQL5 Algo Forge'da Yayınlayın: Adım Adım Kılavuz

MetaTrader 5Örnekler |
21 5
MetaQuotes
MetaQuotes

İçindekiler


Giriş

Makaleniz MQL5'te zaten yayınlandı mı? Ardından bir sonraki adımı atın: makaledeki kodu MQL5 Algo Forge'da tam teşekküllü bir projeye dönüştürün. Kaynak dosyalarını yalnızca bir arşivde bırakmayın. Okuyucuların projenin mevcut sürümünü, net bir dosya yapısını, değişiklik geçmişini ve net bir açıklamayı görebilmesi için bunları depoya taşıyın. Algo Forge Git tabanlıdır, ancak ana Git eylemleri zaten MetaEditor arayüzüne yerleştirilmiştir ve README.md projenin yüzü haline gelir.


Ortamın hazırlanması

MQL5 giriş bilgilerinizi, makaledeki tüm dosyaları ve tamamlanmış bir README.md dosyasını hazırlayın. Projenizi yayınlamayı daha sonraya ertelemeyin. Tüm kod, ayarlar ve destekleyici materyaller parmaklarınızın ucundayken şimdi oluşturun. 
Projenizi depoya yayınlamak için sadece birkaç basit adımı uygulamanız yeterlidir. Kodunuzu yayınlamak 10 dakikadan fazla sürmez. Projeniz bulutta saklanacak ve güncellenecek, böylece dağınık arşivlerden kurtulacaksınız.


Giriş yapma

MetaEditor'ı açın. Araçlar -> Seçenekler -> Topluluk bölümüne gidin ve MQL5 hesabınızla giriş yaptığınızdan emin olun. Bu yetkilendirme olmadan MetaEditor, MQL5 Algo Forge ile çalışamayacaktır.


1. mql5.com kullanıcı adınızı ve şifrenizi kullanarak MetaEditor'da oturum açın


Proje oluşturma

Kılavuz penceresini açın. Shared Projects klasörünü bulun. Üzerine sağ tıklayın ve Yeni Proje'yi seçin. Projenizi burada oluşturun: bu, MetaEditor'dan Algo Forge'a doğru giriş noktasıdır.

2. Kod düzenleyicide yeni bir proje oluşturun


Proje türü

Makale içeriğine göre bir proje türü seçin:

  • Uzman Danışman - bir Uzman Danışman yayınlıyorsanız;
  • Özel Gösterge - bir gösterge yayınlıyorsanız;
  • Komut Dosyası - bir komut dosyası yayınlıyorsanız;
  • Hizmet - bir hizmet yayınlıyorsanız;
  • Kütüphane - bir kütüphane yayınlıyorsanız;
  • Boş - makalede ayrı ayrı derlenmesi gereken birçok dosya mevcutsa ve boş bir şablona ihtiyacınız varsa.

Kararsız kalırsanız ve projede yalnızca bir ana derlenebilir dosya varsa, ana derlenebilir dosyayla eşleşen türü seçin. Bu şekilde, MetaEditor hemen uygun bir proje çerçevesi oluşturacaktır.
Bir makale ayrı ayrı derlenmesi gereken bir dizi farklı dosya içeriyorsa, böyle bir proje başlangıçta Boş olarak oluşturulmalı ve daha sonra dosyalarla bağımsız olarak doldurulmalıdır.

Boş olmayan bir proje oluşturur ve içine örneğin iki veya daha fazla komut dosyası yerleştirirseniz, bunlardan yalnızca biri derlenebilecektir. Diğer komut dosyalarını derlemeye çalışırken, bu tür bir dosyanın projede zaten var olduğuna dair bir hata alırız.

3. Makalenin içeriğine göre oluşturulacak proje türünü seçin


Adlandırma

Size göndereceğimiz adı kullanın. Henüz bir adınız yoksa, net bir adlandırma düzeni kullanın:

[Material type]-[article ID]-[Short topic]

Örneğin: Article-21732-Code-Tears-And-Algo-Forge. Bu ad, projeyi doğrudan makaleyle ilişkilendirir ve gezinmeyi kolaylaştırır.


Proje dosyaları

Okuyucunun kodu derlemek, çalıştırmak veya test etmek için ihtiyaç duyduğu her şeyi ekleyin:

  • Ana .mq5 dosyası;
  • .mqh dosyaları;
  • Kütüphaneler;
  • .set ön ayarları;
  • Görüntüler;
  • CSV, TXT ve diğer veriler;
  • Projenin kullandığı ek kaynaklar.

Kendinizi tek bir ana dosya ile sınırlamayın. Makale bir modül, kaynak veya ayar setine dayanıyorsa, lütfen bunu da ekleyin. Eksiksiz bir proje, okuyucu için her zaman tamamlanmamış bir arşivden daha yararlıdır.

4. Projeyi makaledeki dosyalarla doldurun


Klasörleri düzenleme

Her şeyi bir araya sıkıştırmayın. Projeyi gezinmesi kolay olacak şekilde düzenleyin. Projeler penceresinde, MetaEditor dosyaları mantıksal bölümlere göre otomatik olarak görüntüler: Sources, Headers, Resources, Settings and files ve Dependencies şeklinde ayrı ayrı görüntüler. Bu düzen, ana kodun, header'ların, kaynakların ve hizmet dosyalarının yerini hemen görmenize yardımcı olur.

Eski bir arşivi taşıyorsanız, önce tüm dosyaları düzgün bir proje klasöründe toplayın ve ardından bunları MetaEditor'a bağlayın. Bu şekilde hiçbir şey kaybetmez veya sürümler arasında kafa karışıklığı yaşamazsınız.

5. Dosyaları proje içindeki ilgili klasörlerine yerleştirin


README

Size göndereceğimiz hazır README.md dosyasını alın ve projenizin kök dizinine yerleştirin. Alt klasörlere koymayın. README, projeyi okuyucuya tanıtan şeydir: kodun ne olduğunu, projeye nelerin dahil edildiğini ve nereden başlanacağını açıklar. Bu olmadan, depo isimsiz dosyaların bir koleksiyonu gibi görünür.

6. README.md proje açıklama dosyasını proje kök klasörüne yerleştirin


Kodlama biçimi ve derleme

Göndermeden önce projenizi kontrol etmek için bir dakikanızı ayırın:

  • Makaledeki tüm dosyalar eklendi;
  • Ana .mq5 dosyası yerinde;
  • README.md dosyası kök dizinde bulunuyor;
  • Proje hatasız derlendi;
  • Eski metin dosyaları (bir arşivden aktarıyorsanız) UTF-8 olarak kaydedildi.
Son maddeyi atlamayın. Bu, herkese açık projeler için önemlidir: kodlama biçimi yanlışsa, değişiklik geçmişi doğru şekilde görüntülenmeyebilir.

7. Tüm proje dosyalarını UTF-8 kodlama biçiminde kaydedin


Proje tek bir derlenebilir ana dosyadan oluşuyorsa, Kılavuz penceresinde proje adına sağ tıklanarak ve içerik menüsünden Derle komutu seçilerek derleme gerçekleştirilebilir.
Proje birden fazla derlenebilir dosya içeriyorsa, her biri ayrı ayrı derlenmelidir, aksi takdirde bir derleme hatası alırız.

8.1 Projenin başarıyla derlenip derlenmediğini kontrol edin


8.2 Derlenecek çok sayıda yürütülebilir dosya varsa, bunları ayrı ayrı derleyin


Git'e commit etme ve senkronizasyon

Git Add File/Folder komutunu kullanarak Git'e yeni dosyalar ekleyin ve ardından Git Commit'e tıklayın. Ne eklediğinizi veya güncellediğinizi belirten kısa ve net bir commit mesajı yazın. Bu alanı boş bırakmayın. İyi yorumlar hem sizin hem de okuyucularınızın daha sonra proje geçmişini hızlı bir şekilde anlamasına yardımcı olur. 

Tipik bir senaryoda şu adım yeterlidir: MetaEditor mevcut proje durumunu commit eder ve değişiklikleri buluta gönderir. Proje zaten mevcutsa ve üzerinde çalışmaya devam ediyorsanız, önce Git Pull işlemini gerçekleştirin ve ardından düzenlemelerinizi ekleyin. Bu, yerel ve bulut sürümleriniz arasında gereksiz çakışmaları önlemenize yardımcı olacaktır.

9.1 Bir proje üzerinde çalışmaya başlamadan önce, değişiklikleri depodan çekin


9.2 Çalışmanız bittiğinde, yerel değişikliklerinizi depoya gönderin


9.3 Her commit için bir commit mesajı sağladığınızdan emin olun



Herkese açık mod

Proje hazır olduğunda ve senkronize edildiğinde, Algo Forge'da web sürümünü açın ve herkese açık hale getirin. O zamana kadar gizli kalabilir. Tüm koda, README'ye ve çalışan bir yapıya sahip olduğundan emin olduktan sonra projenizi yayınlayın.

10. Projenin herkese açık olması gerekiyorsa, özel proje kutusundaki işareti kaldırın


Çok makaleli projeler

Tek bir kütüphane, gösterge veya Uzman Danışman hakkında bir makale seriniz varsa, en son sürümü bağlamından kopuk bir şekilde yüklemeyin. Sürümleri ilk makaleden sonuncuya doğru sırayla ekleyin ve gerekirse Algo Forge web arayüzünde ilgili sürümleri oluşturun. Bu şekilde, okuyucu projenin hangi versiyonunun hangi makaleyle ilgili olduğunu hemen görecektir.


11. Serideki her makale için, proje geliştirme geçmişini korumak amacıyla deponun yeni bir sürümünü oluşturun


Kontrol listesi

Bitirmeden önce şunlardan emin olun:

  • Proje Shared Projects'te oluşturuldu;
  • Proje adı doğru;
  • Makaledeki tüm dosyalar eklendi;
  • Proje yapısı anlaşılır durumda ve kafa karışıklığına yol açmaz;
  • README.md dosyası kök dizinde bulunuyor;
  • Proje derlendi;
  • Değişiklikler commit edildi ve Algo Forge'a gönderildi;
  • Gerekiyorsa, proje herkese açık hale getirildi.

Sonuç

Makale kodunu yayının basit bir eki olarak bırakmayın. Bunu bir projeye dönüştürün. Bu, içeriğinizi daha kullanışlı hale getirecek, bakımı basitleştirecek, revizyon geçmişinizi koruyacak ve okuyuculara çalışmanıza uygun bir giriş noktası sağlayacaktır. Makale fikri açıklar. MQL5 Algo Forge projesi ise bu fikrin işleyişini gösterir.

MQL5 Algo Forge hakkında ayrıntılı bir genel bakış için aşağıdaki kaynakları incelediğinizden emin olun:

MetaQuotes Ltd tarafından Rusçadan çevrilmiştir.
Orijinal makale: https://www.mql5.com/ru/articles/22699

Son yorumlar | Tartışmaya git (5)
Vladislav Boyko
Vladislav Boyko | 26 May 2026 saat 12:49

Именование

Size ileteceğimiz adı kullanın. Henüz bir ad yoksa, anlaşılır bir şemaya uyun:

[Тип материала]-[ID статьи]-[Краткая тема]

Örneğin: Article-21732-Code-Tears-And-Algo-Forge. Bu tür bir isim, projeyi makaleyle doğrudan ilişkilendirir ve gezinmeyi kolaylaştırır.

Depoların düzenlenmesine ilişkin kendi görüşleri olan kişiler için bunu zorunlu bir standart haline getirmeyin lütfen.

Benim fikrim şöyle: Tek bir makale serisiyle ilgili depoları bir araya getirecek bir organizasyon oluşturdum. Bu, birbiriyle ilişkili depoları bir "klasör" gibi bir araya getiren, bağlam katan ve depolara kısa ve öz isimler verilmesini sağlayan bir yapıdır. Organizasyonu açtığınızda, makale serisiyle ilgili tüm depolar (ve sadece onlar) düzenli bir şekilde bir araya getirilmiş olarak karşınıza çıkar.

Vladislav Boyko
Vladislav Boyko | 26 May 2026 saat 12:58
[Тип материала]-[ID статьи]-[Краткая тема]

Örneğin: Article-21732-Code-Tears-And-Algo-Forge. Bu tür bir ad, projeyi doğrudan makaleyle ilişkilendirir ve gezinmeyi kolaylaştırır.

Benim durumum şöyle:

  • Tek bir depo, birkaç makalede sırayla geliştirilebilir.
  • Bir makaleye birden fazla depo dahil edilebilir.

Bu nedenle bu şema bana hiç uymuyor.

Fikirin kendisi iyi ve çoğu yazar için mükemmel bir seçim olacaktır (bence). Ancak, bir kişinin bunun kendisine neden uygun olmadığını makul gerekçelerle açıklayabilmesi durumunda, bu kurala uymamasına izin verilmesini rica ediyorum.

Vladislav Boyko
Vladislav Boyko | 26 May 2026 saat 13:15

Типизация

  • Boş — makalede ayrı ayrı derlenmesi gereken çok sayıda dosya varsa...

O zaman bunları birkaç depoya bölebilirsiniz (çoğu zaman).

Bu, uğraşmak için yeterli heves ve disipline sahip olanlar için bir fikir olarak sunulabilir.

Max Brown
Max Brown | 27 May 2026 saat 12:51
Bu, bundan sonra işlerimi düzenli tutmama kesinlikle yardımcı olacak; bu hafta sonu bunu ayarlayacağım.

Teşekkürler
Rashid Umarov
Rashid Umarov | 27 May 2026 saat 14:23
Vladislav Boyko #:
Depoların düzenlenmesine ilişkin kendi görüşleri olan kişiler için bunu zorunlu bir standart haline getirmeyiniz.
Makalelerin/projelerin yapısını iyi yansıtan kendi şemanızı kullanabilirsiniz.
Yeni Raylara Adım Atın: MQL5'te Özel Göstergeler Yeni Raylara Adım Atın: MQL5'te Özel Göstergeler
Yeni terminalin ve dilin tüm yeni olanaklarını ve özelliklerini listelemeyeceğim. Bunlar sayısızdır ve bazı yenilikler ayrı bir makalede tartışılmaya değerdir. Ayrıca burada nesne yönelimli programlama ile yazılmış bir kod yoktur, geliştiriciler için ek avantajlar olarak bir bağlamda basitçe bahsedilemeyecek kadar ciddi bir konudur. Bu makalede, MQL4'e kıyasla göstergeleri, yapılarını, çizimlerini, türlerini ve programlama ayrıntılarını ele alacağız. Umarım bu makale hem yeni başlayanlar hem de deneyimli geliştiriciler için faydalı olacaktır, belki bazıları yeni bir şeyler bulacaktır.
"En İyi Geçişten" Sağlam Çözümlere: MetaTrader 5'te Optimizasyon Yüzeyini Keşfetme "En İyi Geçişten" Sağlam Çözümlere: MetaTrader 5'te Optimizasyon Yüzeyini Keşfetme
Makale, MetaTrader 5'te bir Uzman Danışmanı optimize etmeye yönelik bir mühendislik yaklaşımını incelemektedir: Optimizasyon Çerçeveleri aracılığıyla özel ölçütlerin toplanmasından parametre yüzeyi analizine kadar. Basit bir olay odaklı EMA/RSI modeli, Python'da CSV dışa aktarma, yumuşatma ve yerel istikrar değerlendirmesini göstermektedir. Amaç, konfigürasyonların istikrarlı alanlarını bulmak ve bunları güvenilir uygulama için ileri optimizasyonla doğrulamaktır.
İşte Karışınızda Yeni MetaTrader 5 ve MQL5 İşte Karışınızda Yeni MetaTrader 5 ve MQL5
Bu MetaTrader 5 ile ilgili sadece kısa bir inceleme. Sistemin tüm yeni özelliklerini bu kadar kısa sürede açıklayamam, test süreci 09.09.2009’da başladı. Bu sembolik bir tarihtir ve şanslı sayı olacağına eminim. MetaTrader 5 terminalinin ve MQL5’in beta sürümünü beş gün önce aldım. Tüm özelliklerini deneme şansım olmadı ama şimdiden etkilendim.
En Güçlü Makine Öğrenimi Destekli İşlem Platformunu Nasıl Oluşturduk: Arşivler, Forumlar ve Sürümler Aracılığıyla MQL ve MetaTrader’ın Gelişim Süreci En Güçlü Makine Öğrenimi Destekli İşlem Platformunu Nasıl Oluşturduk: Arşivler, Forumlar ve Sürümler Aracılığıyla MQL ve MetaTrader’ın Gelişim Süreci
MQL’nin gelişimine ilişkin teknik geçmiş: sınırlı özelliklere sahip MQL ve MQL II dillerinden, prosedürel MQL4’e ve ardından yerel derleme, zengin API’ler ve tam teşekküllü bir mühendislik ortamına sahip nesne yönelimli MQL5’e. Burada, dilin temel yeteneklerini ve Python, OpenCL, ONNX, OpenBLAS, veritabanları, DirectX, ajan tabanlı AI Assistant ve Model Bağlam Protokolü (Model Context Protocol, MCP) ile entegrasyonlarını ele alıyoruz. Model Bağlam Protokolü (MCP), AI sistemlerini terminal, MetaEditor, piyasa verileri, alım-satım işlemleri ve geliştirme araçlarıyla birbirine bağlar. Bu makale, MetaQuotes ve MetaTrader’ın kökenleri, MQL4.COM ve MQL5.COM’un kullanıma sunulması, şampiyonalar, Algo Forge ve bunların ekosistem üzerindeki etkilerine ilişkin arşiv materyallerini incelemektedir.