mawilimw indikatörü ile alarm kurup alım satım yapmak
- Soruldu
- Kategori
- Algoritmik Trading
- Görüntülenme
- 1.584 görüntülenme
- Durum
- Cevaplandı
Matriks Ürünleri ile ilgili tüm sorularınız için bizlere buradan ulaşabilirsiniz. Daha önce sorulan soruları ve verilen cevapları ilgili sekmelerden ve arama üzerinden inceleyebilirsiniz. Sağ taraftaki kategoriler üzerinden İlgilendiğiniz özelliklerle ilgili soruları filtreleyebilirsiniz. Soru ve cevapları sosyal medyada paylaşabilirsiniz. Sorduğunuz ve cevapladığınız soruların ve yorumlarınızın aldığı oylar üzerinden puan kazanırsınız. Puan sistemine bağlı kampanyamızla ücretsiz kullanım avantajlarından faydalanabilirsiniz.
Merhaba,
IQ tarafında kod yazmak zaman alıyor. Olmayan indikatörler düzenli olarak eklenmektedir.
Şu aşamada, mavilim içini yapmak istediğiniz, indikatör alarmı ile yapamazsınız. Formüllü fiyat penceresi üzerinden veya strateji yazarak yapılabilir.
Alım satım yapmak istiyorum dediğiniz için, strateji olarak hazırladık.
Kodu aşağıdadır.
Stratejinin adını
MAVILIMRENKDONUS olarak başlatınız.
İyi çalışmalar.
***STRATEJILERI TEST/DENEME ORTAMINDA SINAMADAN VE SIZIN ISTEDIGINIZ SEKILDE CALISTIGINA EMIN OLMADAN GERCEK ORTAMDA HIC BIR ZAMAN CALISTIRMAYIN***
using System;
using System.Collections.Generic;
using System.Linq;
using Matriks.Data.Symbol;
using Matriks.Engines;
using Matriks.Indicators;
using Matriks.Symbols;
using Matriks.AlgoTrader;
using Matriks.Trader.Core;
using Matriks.Trader.Core.Fields;
using Matriks.Trader.Core.TraderModels;
using Matriks.Lean.Algotrader.AlgoBase;
using Matriks.Lean.Algotrader.Models;
using Matriks.Lean.Algotrader.Trading;
namespace Matriks.Lean.Algotrader
{
public class MAVILIMRENKDONUS : MatriksAlgo
{
// Strateji çalıştırılırken kullanacağımız parametreler. Eğer sembolle ilgili bir parametre ise,
// "SymbolParameter" ile, değilse "Parameter" ile tanımlama yaparız. Parantez içindeki değerler default değerleridir.
[SymbolParameter("GARAN")]
public string Symbol;
[Parameter(SymbolPeriod.Min60)]
public SymbolPeriod SymbolPeriod;
[Parameter(1)]
public int Quantity;
[Parameter(3)]
public int firstMovPeriod;
[Parameter(9)]
public int secondMovPeriod;
MAVILIMW mavilimw;
public override void OnInit()
{
mavilimw = MAVILIMWIndicator(Symbol, SymbolPeriod, firstMovPeriod, secondMovPeriod );
AddSymbol(Symbol, SymbolPeriod);
//Eger backtestte emri bir al bir sat seklinde gonderilmesi isteniyor bu true set edilir.
//Alttaki satırı silerek veya false geçerek emirlerin sirayla gönderilmesini engelleyebilirsiniz.
SendOrderSequential(true);
WorkWithPermanentSignal(true);
}
/// <summary>
/// Eklenen sembollerin bardata'ları ve indikatorler güncellendikçe bu fonksiyon tetiklenir.
/// </summary>
/// <param name="barData">Bardata ve hesaplanan gerçekleşen işleme ait detaylar</param>
public override void OnDataUpdate(BarDataCurrentValues barDataCurrentValues)
{
var barData = GetBarData();
var Refmavilimw1 = Ref(mavilimw, -1);
var Refmavilimw2 = Ref(mavilimw, -2);
if (mavilimw.CurrentValue>Refmavilimw1 && Refmavilimw1<Refmavilimw2)
{
SendMarketOrder(Symbol, Quantity, OrderSide.Buy);
Debug("Alis emri gonderildi");
}
if (mavilimw.CurrentValue<Refmavilimw1 && Refmavilimw1>Refmavilimw2)
{
SendMarketOrder(Symbol, Quantity, OrderSide.Sell);
Debug("Satis emri gonderildi");
}
}
}
}
Sitenin çalışması için gerekli çerezleri kullanıyoruz. Ziyaretleri anlamak için analitik çerezleri yalnızca onayınızla kullanırız. Çerez Politikası