Hampir siap EA, kode berfungsi untuk perintah BELI, tetapi tidak untuk pesanan SELL
Results 1 to 7 of 7

Thread: Hampir siap EA, kode berfungsi untuk perintah BELI, tetapi tidak untuk pesanan SELL

  1. #1
    Halo semua.

    Saya baru di forum ini, tetapi tidak baru untuk memandu perdagangan dan EA. Saya sangat senang melihat aktivitas di forexfabrikasi dan ingin mengenal Anda.

    Saya baru saja siap dengan EA sederhana kecil saya, tetapi berdasarkan pengkodean SL ordermodify untuk perdagangan singkat.

    Yang saya coba capai adalah itu;
    Ketika harga mencapai 20pips profit: sesuaikan SL dari -40pip ke -20pips. (Kurangi SL menjadi dua)
    Ketika harga mencapai 40 pips profit: Trailing Stop menendang masuk (Break even )

    Ini bekerja dengan sangat baik untuk posisi PANJANG, tetapi mungkin tidak untuk posisi singkat.
    Jika ada yang bisa menemukan kesalahansolusi yang jelas, saya akan sangat berterima kasih.

    Berikut ini kodenya:

    Kode Disisipkan dual newSL; if ((Bid-OrderOpenPrice ()) gt; = 200 * Point) newSL = OrderOpenPrice () - 200 * Point; if ((Bid-OrderOpenPrice ()) gt; = 400 * Point) newSL = Bid- (TrailingStop * Point); newSL = NormalizeDouble (newSL, Digits); if (newSLgt; OrderStopLoss ()) OrderModify (OrderTicket (), OrderOpenPrice (), newSL, OrderTakeProfit (), 0, Green); kembali (0); } else/pindah ke posisi singkat jika ((OrderOpenPrice () - Ask) gt; = 200 * Point) newSL = OrderOpenPrice () 200 * Point; if ((OrderOpenPrice () - Ask) gt; = 400 * Point) newSL = (TrailingStop * Point) Tanya; newSL = NormalizeDouble (newSL, Digits); if (newSLlt; OrderStopLoss ()}
    Terimakasih sebelumnya,
    Oddvin

  2. #2

    Quote Originally Posted by ;
    if ((OrderOpenPrice () - Ask) gt; = 200 * Stage) newSL = OrderOpenPrice () 200 * Stage; if ((OrderOpenPrice () - Ask) gt; = 400 * Stage) newSL = (TrailingStop * Stage) Tanya;
    Mungkin ini benar-benar salah ketik dan harus seperti itu: Kode Disisipkan newSL = NormalizeDouble (# 91; color = Red # 93; newSL # 91;color # 93;, Digits); PS: Silakan bungkus kode Anda ke dalam tag CODE ketika memposting di sini dari forum untuk mempertahankan pemformatan. Selain itu selalu dianggap gaya buruk (buruk siap pakai) untuk menggunakan bentuk singkat untuk satu baris jika konstruk. Anda harus membantu pembaca kode Anda dan menggunakan sintaks yang panjang, meskipun itu diizinkan untuk meninggalkan kurung.

  3. #3
    7bit, terima kasih atas pengamatan Anda. Sayangnya, itu salah ketik di posting saya, tapi mungkin bukan alasan di balik kesalahan SELL ordermodify. Apa yang terjadi sangat aneh; segera setelah order SELL dibuka (dengan SL yang benar), ia memodifikasi dan menghilangkan SL sepenuhnya. Ketika harga mencapai target pertama ( 20pip) menguntungkan saya, itu menambahkan SL baru dan jika harga berjalan bacwards, itu menghilangkan SL lagi. Seperti komentar Anda yang lain, saya cukup baru untuk berkomunikasi dan juga forum FX, jadi tolong maafkan saya jika saya tidak mengincar integritas forum umum. Apakah maksud Anda saya harus memposting kode EA? Terima kasih atas bantuan Anda.

  4. #4

    Quote Originally Posted by ;
    Apakah Anda percaya saya harus memposting seluruh kode EA? Terima kasih atas bantuan Anda.
    Tujuannya adalah memungkinkan Anda untuk berhasil memperbaiki masalah ini. Pertama, Anda harus belajar untuk menggunakan secara ekstensif pekerjaan Print () ini, ini adalah teman yang paling penting ketika datang ke debugging. Periksa kode Anda seolah-olah Anda adalah pc (di mana Anda merasa komputer berjalan ketika setelah kode) dan cetak pada setiap langkah setiap faktor yang mungkin memiliki pengaruh untuk memastikan komputer benar-benar melakukan apa yang Anda pikir akan dilakukan. Buatlah sehingga secara harfiah memberi tahu Anda apa sebenarnya yang dilakukan dan apa yang terjadi dan jika itu dilaksanakan, ini akan segera menunjukkan di mana masalahnya. Dimasukkan Kode Cetak (masuk instan jika pembagian.); Print (Order memiliki SL ini:, OrderStopLoss ()); Print (newSL saat ini memiliki rasa hormat ini:, newSL); Print (memanggil OrderModify () dengan nilai-nilai ini: newSL, ..., ...);

  5. #5
    Terima kasih atas masukan dan kiat Anda. Saya bermain dengan beberapa tweak tanpa penggunaan dan hampir menyerah. Saya kemudian mengerti bahwa ea awalnya mengenali nilai newSL (seperti order SELL) sebagai nol, sehingga secara instan mengubah urutan bebas dari SL. Setelah saya menempatkan baris sederhana ini di atas: newSL = OrderStopLoss (); , masalah itu lenyap. Saya berhasil menerapkan TrailingStep. Tidak ada hal yang besar, tetapi bagi coder newbie seperti saya itu adalah pencapaian yang hebat dan sangat berguna: - RRB- BARU KODE: Disisipkan Kode lain/pindah ke short standing {newSL = OrderStopLoss (); if ((OrderOpenPrice () - Ask) gt; 200 * Stage) newSL = OrderOpenPrice () (200 * Stage); if ((OrderOpenPrice () - Ask) gt; 400 * Stage) newSL = Tanya (Point * TrailingStop); {newSL = NormalizeDouble (newSL, Digits); if (((OrderStopLoss () - (TrailingStep * Stage)) gt; newSL) || (OrderStopLoss () == 0)) OrderModify (OrderTicket (), OrderOpenPrice (), newSL, OrderTakeProfit (), 0, Red); kembali (0); Saya tidak tahu mengapa ini diperlukan untuk pesanan Ekonomi saja, namun tampaknya bekerja dengan lancar.

  6. #6

    Quote Originally Posted by ;
    Saya tidak tahu mengapa ini hanya diperlukan untuk pesanan Jual, tetapi tampaknya berfungsi dengan lancar.
    Karena stop loss 0 berarti tidak ada stop loss. Dan jika membandingkan harga saat ini dengan stop loss saat ini maka 0 akan selalu lebih kecil dibandingkan dengan harga untuk pesanan pembelian, tetapi ketika Anda sudah mendapat order jual maka 0 akan berarti berhenti benar-benar di sisi lain * (sudah terlalu banyak) , jadi tidak akan pernah melacaknya. Anda perlu mengurus 0 secara terpisah untuk pesanan pasar, untuk pesanan pembelian 0 saat ini di sisi kanan dari perdagangan ini. Saya tidak melihatnya ketika melihat kode Anda, meskipun saya telah mengalami masalah ini sendiri beberapa bulan yang lalu. Saya memecahkannya di perpustakaan fungsi saya dan sejak itu tidak pernah perlu mempertimbangkannya.

  7. #7
    Anda tentu saja benar. Begitu saya memikirkannya, itu masuk akal. Perasaan luar biasa untuk menyelesaikannya.

Similar Threads

  1. Balasan: 4
    Postingan Terakhir: 12-05-2021 09:00, 09:00 AM
  2. Kode untuk Batas Beli?
    By gehuhyeho05 in forum Pembicaran Bitcoin dan Mata Uang Kripto
    Balasan: 21
    Postingan Terakhir: 11-23-2021 08:05, 08:05 AM
  3. Kode EA untuk menutup pesanan di TP tetapi hanya setelah 2 menit terbuka
    By jttewuhyin in forum Pembicaran Bitcoin dan Mata Uang Kripto
    Balasan: 5
    Postingan Terakhir: 11-12-2021 14:56, 02:56 PM
  4. Hampir siap EA, kode berfungsi untuk perintah BELI, tetapi tidak untuk pesanan SELL
    By QuimW in forum Pembicaran Bitcoin dan Mata Uang Kripto
    Balasan: 6
    Postingan Terakhir: 11-25-2009 13:06, 01:06 PM
  5. Balasan: 0
    Postingan Terakhir: 09-23-2006 14:42, 02:42 PM

Izin Posting

  • Anda tidak boleh memposting thread baru
  • Anda tidak boleh memposting balasan
  • Anda tidak boleh memposting lampiran
  • Anda tidak boleh menyunting postingan Anda
  •  
  • Kode BB Aktif
  • Smilies Aktif
  • Kode [IMG] Aktif
  • Kode [VIDEO] Aktif
  • Kode HTML tidak aktif
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.