Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Kleinanzeigen (http://www.expert-advisor.com/forum/forumdisplay.php?f=256)
-   -   Meine Strategie umsetzen. Wer teilt mein Interesse und stellt mir die Programmierung (http://www.expert-advisor.com/forum/showthread.php?t=4409)

traderdoc 03.02.17 10:50

Redest Du nun von diesem Board hier, dann verstehe ich die Bemerkung mit dem Pleitegehen der Seite FF (Forex-Fabrik?) nicht.
Redest Du von der Forex-Fabrik, dann verstehe ich es nicht, weil es dort keine Elite- oder Premium-Mitglieder gibt.

Also, was soll uns Deine Bemerkung v.a. bzgl. des Pleiteganges denn nun sagen?
Und welchen Quassler als Elite Boarder meinst Du eigentlich?

traderdoc

MA-EA 03.02.17 17:15

Besser? :confused:
Code:

//Versuch mit einer For-Schleife die Orders zu zählen:
    for(i=OrdersTotal()-2;i==0;i--){
    Print(i);{//nur zum Testen
//-------------------------------------------------------------------------------------------------------------
//Open Trade(s)
      if(OrdersTotal()==0&&TC>F&&TC<T&&SPR<=MS){
        OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,0,0,Name + " Buy(#" + MagicNumber + ")",MagicNumber,0,Blue);//    | Open Buy
        OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,0,0,Name + " Sell(#" + MagicNumber + ")",MagicNumber,0,Red);}}}// | Open Sell
//-------------------------------------------------------------------------------------------------------------

//Close Buy
    for(j=OrdersTotal()-2;j>=1;j--){
      if(OrderSelect(j,SELECT_BY_POS)){
        if(OrderType()==OP_BUY&&OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol()){//                          | Close Buy
          if((CCOP<CML)||(CCOP>CMP)||(CAA=true&&TC>CA))OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,DarkBlue);}}}
       
//Close Sell
      if(OrderSelect(j,SELECT_BY_POS)){
        if(OrderType()==OP_SELL&&OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol()){//                          | Close Sell
          if((CCOP<CML)||(CCOP>CMP)||(CAA=true&&TC>CA))OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,FireBrick);}}
//-------------------------------------------------------------------------------------------------------------

return(0);}
//EA Ende


traderdoc 03.02.17 17:26

Nein!
Der gesamte Code wird keine Order zählen.
V.a. was soll das:
for(i=OrdersTotal()-2;i==0;i--){
Print(i);{//nur zum Testen
//-------------------------------------------------------------------------------------------------------------
//Open Trade(s)
if(OrdersTotal()==0 && ...
Hinter diese Stelle wird der EA nie! kommen, sobald mindestens eine Order offen ist. Sollte überhaupt keine Order offen sein, dann würde das Programm gar nicht erst zu dieser Stelle kommen.

Und for(i=OrdersTotal()-2;i==0;i--) funktioniert so oder so nicht.
Mann, @MA-EA, jetzt verheize endlich diese Bücher, wenn es da so falsch drin steht und nehme Dir doch einfach fertige Codebeispiele aus dem Netz. Das ist prallevoll damit.

traderdoc

MA-EA 03.02.17 18:57

Zitat:

Zitat von traderdoc (Beitrag 37415)
for(i=OrdersTotal()-2;i==0;i--){

for startet die Schleife

i deklariert in dem Fall OrdersTotal()

-2 sagt das nicht, wie oft die Schleife durch gezogen werden soll? :confused:

i==0, also wenn für dieses Symbol keinerlei Orders offen sind, soll er den Befehlen darunter zufolge 1 Buy und 1 Sell öffnen.

So ungefähr hab ich das nach weiß ich wie langem googlen und lesen verstanden. :confused: Im MT4 passiert aber wieder überhaupt nix, ausser irgendeinem Reason 1 oder so.

Und im Internet steht auch irgendwie unterschiedlichster Sch..., aus dem ich kein bißchen schlauer werde.

In meinen fertigen EAs wird irgendwie so gezählt:
Code:

//Check position
IsInvested=false;
for(i=OrdersTotal()-1;i>=0;i--){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
if((OrderType()==OP_SELL||OrderType()==OP_BUY)&&OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol())IsInvested=true;}}

Code:

if(IsInvested){
for(i=OrdersTotal()-1;i>=0;i--){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){

Aber da der Scalpierer ja Buy UND Sell gleichzeitig traden soll, kann man das ja nicht 1:1 übertragen. :(

MA-EA 03.02.17 21:14

Siehe der Buy und der Sell ganz unten um 19:44:54 unter dem blau markierten Trade. War jetzt kein Rekord-Gewinn, aber es scheint zu funken. :) Allerdings muss man echt schnell sein und nen günstigen Broker haben. Ca. 0.26 € Kosten für sonen Scalp sind jetzt nicht unbedingt günstig.

Wie ich mir dachte, waren Spesen und ein kleiner Verlust mit dem Gewinner wieder drin. Allerdings sollte man wohl volatile Zeiten nutzen und dem Kurs etwas mehr Spielraum geben, um sich zu entscheiden. Aber wie schon gesagt: Welche Strategie ist 100%ig perfekt...
http://www.imgbox.de/users/public/th...j0jDpcrs_t.gif

Kronenchakra 05.02.17 00:59

Zitat:

Zitat von MA-EA (Beitrag 37416)
for startet die Schleife

i deklariert in dem Fall OrdersTotal()

-2 sagt das nicht, wie oft die Schleife durch gezogen werden soll? :confused:

i==0, also wenn für dieses Symbol keinerlei Orders offen sind, soll er den Befehlen darunter zufolge 1 Buy und 1 Sell öffnen.

So ungefähr hab ich das nach weiß ich wie langem googlen und lesen verstanden. :confused: Im MT4 passiert aber wieder überhaupt nix, ausser irgendeinem Reason 1 oder so.

Und im Internet steht auch irgendwie unterschiedlichster Sch..., aus dem ich kein bißchen schlauer werde.

In meinen fertigen EAs wird irgendwie so gezählt:
Code:

//Check position
IsInvested=false;
for(i=OrdersTotal()-1;i>=0;i--){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
if((OrderType()==OP_SELL||OrderType()==OP_BUY)&&OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol())IsInvested=true;}}

Code:

if(IsInvested){
for(i=OrdersTotal()-1;i>=0;i--){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){

Aber da der Scalpierer ja Buy UND Sell gleichzeitig traden soll, kann man das ja nicht 1:1 übertragen. :(

Gib's auf und kauf dir ein gutes Buch. Aber keines über Programmieren, das wirst du nie verstehen :D

traderdoc 07.02.17 10:57

Mit
for(i=OrdersTotal()-1;i>=0;i--){
steht es doch nun schon richtig in Deinen EAs. Daher verstehe ich es nicht, warum bei Dir was komplett anderes steht.

Und wie eine for-Anweisung in C aufgebaut ist und funktioniert, ist in jedem C-Buch nachlesbar und nachvollziehbar.

Aber man sollte auch die Stelle erkennen, an der man ehrlich sich selbst sagen muss - das ist nicht mein Ding. Ich würde das z.B. beim Erlernen des Klavierspielens nach wenigen Tagen sagen.
Aus Deinen vielen Post, wäre ich an Deiner Stelle schon längst soweit gewesen.
Da ich seit vielen Jahren programmiere, nehme ich mir mal jetzt das Recht heraus, Dir den gut gemeinten Rat zu geben, Deine Kräfte auf andere Dinge des Tradings zu legen.

traderdoc

MA-EA 08.02.17 22:01

Zitat:

Zitat von traderdoc (Beitrag 37484)
for(i=OrdersTotal()-1;i>=0;i--)

Ich glaube, das einfach wie in meinen anderen EAs zu machen, hatte nicht funktioniert.
Code:

//Check position
IsInvested=false;
for(i=OrdersTotal()-1;i>=0;i--){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){
if((OrderType()==OP_SELL||OrderType()==OP_BUY)&&OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol())IsInvested=true;}}

//Open Trade
if(!IsInvested){
if(TC>F&&TC<T&&SPRE<=MS&&CP1>UD_F&&UD_F>UD_M&&UD_M>UD_S)OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,0,0,Name + " Buy(#" + MagicNumber + ")",MagicNumber,0,Blue);
if(TC>F&&TC<T&&SPRE<=MS&&CP1<UD_F&&UD_F<UD_M&&UD_M<UD_S)OrderSend(Symbol(),OP_SELL,Lots,Bid,Slippage,0,0,Name + " Sell(#" + MagicNumber + ")",MagicNumber,0,Red);}

Code:

//Close Trade
if(IsInvested){
for(i=OrdersTotal()-1;i>=0;i--){
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){

if(OrderType()==OP_BUY&&OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol()){
if((CP1<UD_F&&UD_F<UD_M)||(CAA=true&&TC>CA)||(CLTF=true&&CP1<UD_F&&ORPR<CML))OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,DarkBlue);}

if(OrderType()==OP_SELL&&OrderMagicNumber()==MagicNumber&&OrderSymbol()==Symbol()){
if((CP1>UD_F&&UD_F>UD_M)||(CAA=true&&TC>CA)||(CLTF=true&&CP1>UD_F&&ORPR<CML))OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,FireBrick);}}}}

Hab aber erst mal nen anderes Problem:

Die Kosten. :eek: Das Prinzip ansich funktioniert (auch wenn noch Feinschliff und Übung nötig ist). Heute Live getestet und festgestellt, dass man für 1 o. 2 Cent Gewinn ganz schön großes Risiko fährt. Waren heute ca. 5 Cent Spread + 6 Cent Kommission pro Richtung.

Deswegen bräuchte man Broker und Produkte, wo man möglichst keine Kosten und nen niedrigen, vielleicht festen Spread hat.

Dann müsste man vielleicht den Verlierer schon schließen, sobald er mehr oder fast soviel Verlust macht, wie seine Spesen sind. Andererseits wieder müsste man auf den Punkt warten, wo der Kurs sich klar für eine Richtung entscheidet, in der man dann auf jeden Fall seine Kosten und Verluste und nen paar Cent Gewinn wieder rein bekommt.

Kennt Jemand sehr günstige, zuverlässige Broker und Produkte? Wo Long und Short gleichzeitig geht?

MA-EA 11.02.17 21:49

Liste der Anhänge anzeigen (Anzahl: 1)
Abend.

Hab mal irgendwas gelesen, dass man den Wert einer Order irgendwie als OrderPrice() oder so deklarieren kann. D.h., ich such halt nen Weg, den Order-Wert in Pips anzugeben statt in Teuro. :confused: Das würde natürlich die Umrechnung in EUR ersparen.

traderdoc 11.02.17 22:10

Sorry, ich bin nur noch sprachlos.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:19 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum