Forex
Google
New signals service!

Go Back   Forex Trading > Discussion Areas > Suggestions for Trading Systems


Register in Forex TSD!
Trading Systems Leaders in this forum (automated trading systems) are winning more than 3000 pips in a month (30000$ investing one lot every time).
Click here to register and get more information

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 02-27-2007, 09:31 AM
spence's Avatar
Member
 
Join Date: Jan 2007
Posts: 35
spence is on a distinguished road
Talking secure 10 pips a day

hi @ all

I have an idea for a trading system without using any indicator.
the idea came by reading some grid-system-threads
it isn't always profitable but i thing about 85%
so let me explain:

sooner or later the market trends, right?

so if we open 10 positions, 5 short and 5 long

5.long TP 25 pip 1.0 lot
4.long TP 20 pip 0.8 lot
3.long TP 15 pip 0.6 lot
2.long TP 10 pip 0.4 lot
1.long TP 5 pip 0.2 lot

__________________________
spread

__________________________
START
__________________________

spread
__________________________


1.short TP 5 pip 0.2 lot
2.short TP 10 pip 0.4 lot
3.short TP 15 pip 0.6 lot
4.short TP 20 pip 0.8 lot
5.short TP 25 pip 1.0 lot



assumed the market goes up:

the 1. long pos. is TP --> +10$ , then we close the 5. short pos. --> -50$
the 2. long pos. is TP --> +40$ , then we close the 4. short pos. --> -80$
the 3. long pos. is TP --> +90$ , then we close the 3. short pos. --> -90$
the 4. long pos. is TP --> +160$ , then we close the 2. short pos. --> -80$
the 5. long pos. is TP --> +250$ , then we close the 1. short pos. --> -50$
we have a total profit of 200$, right?

of cause the same works in the other direction,too

so where is the problem?

the worst case we could have is if the market turns the direction around the 3. pos. then we would have -160$

but we only need a move of 25pip to get our 200$

so the next argument would be the spread:
if i calculate right with 3pip it would be -90$, right?

so there will be still 110$ profit
and in the worst case - 250$, right?

hmm, now we have more loss then profit, but remember - we only
need a move of 25 pip so i think we could win more then 85% of the positions.

i think 10 pip a day should be possible

questions and suggestions are welcome
i think we could make a profitable EA out of this together

maybe include some indi , change the TP , test the major pairs, trade on news/opens or something else ........

so please suggest this idea

Last edited by spence; 02-27-2007 at 10:57 AM.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 02-27-2007, 11:05 AM
spence's Avatar
Member
 
Join Date: Jan 2007
Posts: 35
spence is on a distinguished road
the same with 3 pip progressive rate

if we use only 3 pip progressive rate we need only a 15 pip move
and still have 30$ after the 3pip - spread

5.long TP 15 pip 1.0 lot
4.long TP 12 pip 0.8 lot
3.long TP 9 pip 0.6 lot
2.long TP 6 pip 0.4 lot
1.long TP 3 pip 0.2 lot
__________________________
spread
__________________________
START
__________________________
spread
__________________________

1.short TP 3 pip 0.2 lot
2.short TP 6 pip 0.4 lot
3.short TP 9 pip 0.6 lot
4.short TP 12 pip 0.8 lot
5.short TP 15 pip 1.0 lot


assumed the market goes up:

the 1. long pos. is TP --> +6$ , then we close the 5. short pos. --> -30$
the 2. long pos. is TP --> +24$ , then we close the 4. short pos. --> -48$
the 3. long pos. is TP --> +54$ , then we close the 3. short pos. --> -54$
the 4. long pos. is TP --> +96$ , then we close the 2. short pos. --> -48$
the 5. long pos. is TP --> +150$ , then we close the 1. short pos. --> -30$
120$ - 90$ spread = 30$ profit
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 02-27-2007, 12:07 PM
Senior Member
 
Join Date: Jun 2006
Posts: 307
chrisstoff is on a distinguished road
Well, the idea is good.

But there are some issues that should be counted in:

Stop Level: the distance in points the TakeProfit or StopLoss, etc. should differ from the market price. The value of Stop Level is varying depending on the broker; e.g. IB FX applies 5 pips, North Finance 10 pips. So, your first grid is doable with IB FX but the second is not.

News Trading: Your idea could be used nicely with news trading if the brokers filled the orders in real time (I'm speaking about live trading not demo), without any lag, requoting and spread increase. (I have still been looking for a broker that does it during big news releasing time.)

So, I think your frist grid can be viable in a trend when the movement is at least 20 pips without any intermediate whipsaw. Consequently the method would need good indicators that forcast that kind of movement in due time.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #4 (permalink)  
Old 02-27-2007, 03:52 PM
spence's Avatar
Member
 
Join Date: Jan 2007
Posts: 35
spence is on a distinguished road
Quote:
Originally Posted by chrisstoff
Well, the idea is good.

But there are some issues that should be counted in:

Stop Level: the distance in points the TakeProfit or StopLoss, etc. should differ from the market price. The value of Stop Level is varying depending on the broker; e.g. IB FX applies 5 pips, North Finance 10 pips. So, your first grid is doable with IB FX but the second is not.

News Trading: Your idea could be used nicely with news trading if the brokers filled the orders in real time (I'm speaking about live trading not demo), without any lag, requoting and spread increase. (I have still been looking for a broker that does it during big news releasing time.)

So, I think your frist grid can be viable in a trend when the movement is at least 20 pips without any intermediate whipsaw. Consequently the method would need good indicators that forcast that kind of movement in due time.

i don't think that there is a problem with TP and SL because you can code it as small as you want
ex.:

if currentprice is .... -> orderclose

(i'v already did) so you only need the movement of 25 pips or 15 with 3 pip progressive rate

maybe we can use a progressive rate of 10 or 15 to go around the little price reversals
thanks for suggestion

Last edited by spence; 02-27-2007 at 04:41 PM.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #5 (permalink)  
Old 02-27-2007, 05:05 PM
Senior Member
 
Join Date: Jan 2006
Posts: 1,119
omelette is on a distinguished road
Hi. Correct me if I'm wrong but you're opening 30 minilots Long and 30 minilots Short simultaneously (60 minilots or 6 standard lots in total) and then depending on which way price goes, phasing out of the losing side while profiting from the winning side - is this correct? If so, and assuming GDPUSD and a 4 point spread, you are instantly down $80 when you open the orders which you do not seem to be including in your calculations. Am I wrong?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #6 (permalink)  
Old 02-28-2007, 06:04 AM
spence's Avatar
Member
 
Join Date: Jan 2007
Posts: 35
spence is on a distinguished road
Quote:
Originally Posted by omelette
Hi. Correct me if I'm wrong but you're opening 30 minilots Long and 30 minilots Short simultaneously (60 minilots or 6 standard lots in total) and then depending on which way price goes, phasing out of the losing side while profiting from the winning side - is this correct?
it's correct


Quote:
If so, and assuming GDPUSD and a 4 point spread, you are instantly down $80 when you open the orders which you do not seem to be including in your calculations. Am I wrong?
I'f already did, but i did it with 3pips
------>
Quote:
so the next argument would be the spread:
if i calculate right with 3pip it would be -90$, right?

so there will be still 110$ profit
and in the worst case - 250$, right?
with 4 pips it would be -120$
with 2 pips it would be only -60$
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #7 (permalink)  
Old 02-28-2007, 03:22 PM
Member
 
Join Date: Apr 2006
Posts: 48
greatlakes is on a distinguished road
I tried testing this on demo. Problem is getting all the orders in manually. The buy/sell stops are hit before all my orders are in. Making it useless. Really needs an ea.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #8 (permalink)  
Old 02-28-2007, 09:22 PM
Member
 
Join Date: Dec 2006
Posts: 57
remcous is on a distinguished road
Question

Hello,

I'm very new to coding for MT4, but I've try to code your system...

If someone can help me with my first code

thank

remy


Code:
//+------------------------------------------------------------------+
//|                                                        trade.mq4 |
//|                      Copyright © 2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2004, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net/"

#include <stdlib.mqh>
#include <WinUser32.mqh>
//+------------------------------------------------------------------+
//| script "secure 10 pips a day"                                    |
//+------------------------------------------------------------------+
int start()
  {
//----
   if(MessageBox("Do you really want to order 6.00 "+Symbol()+" ?",
                 "Script",MB_YESNO|MB_ICONQUESTION)!=IDYES) return(1);
//---- Orders Short
   int ticketS_1=OrderSend(Symbol(),OP_SELL,0.2,Bid,3,Bid+30*Point,Bid-10*Point,"Short order #1 TP3, 0.2 lots",255,0,CLR_NONE);
   if(ticketS_1<1)
     {
      int errorS_1=GetLastError();
      Print("Error = ",ErrorDescription(errorS_1));
      return;
     }
     OrderPrint();
   int ticketS_2=OrderSend(Symbol(),OP_SELL,0.4,Bid,3,Bid+25*Point,Bid-15*Point,"Short order #2 TP6, 0.4 lots",255,0,CLR_NONE);
   if(ticketS_2<1)
     {
      int errorS_2=GetLastError();
      Print("Error = ",ErrorDescription(errorS_2));
      return;
     }
     OrderPrint();
   int ticketS_3=OrderSend(Symbol(),OP_SELL,0.6,Bid,3,Bid+20*Point,Bid-20*Point,"Short order #3 TP9, 0.6 lots",255,0,CLR_NONE);
   if(ticketS_3<1)
     {
      int errorS_3=GetLastError();
      Print("Error = ",ErrorDescription(errorS_3));
      return;
     }
     OrderPrint();
   int ticketS_4=OrderSend(Symbol(),OP_SELL,0.8,Bid,3,Bid+15*Point,Bid-25*Point,"Short order #4 TP12, 0.8 lots",255,0,CLR_NONE);
   if(ticketS_4<1)
     {
      int errorS_4=GetLastError();
      Print("Error = ",ErrorDescription(errorS_4));
      return;
     }
     OrderPrint();
   int ticketS_5=OrderSend(Symbol(),OP_SELL,1.0,Bid,3,Bid+10*Point,Bid-30*Point,"Short order #5 TP15, 1.0 lots",255,0,CLR_NONE);
   if(ticketS_5<1)
     {
      int errorS_5=GetLastError();
      Print("Error = ",ErrorDescription(errorS_5));
      return;
     }
     OrderPrint();
//---- Orders Long
   int ticketL_1=OrderSend(Symbol(),OP_BUY,0.2,Ask,3,Ask-30*Point,Ask+10*Point,"Long order #1 TP3, 0.2 lots",255,0,CLR_NONE);
   if(ticketL_1<1)
     {
      int errorL_1=GetLastError();
      Print("Error = ",ErrorDescription(errorL_1));
      return;
     }
     OrderPrint();
   int ticketL_2=OrderSend(Symbol(),OP_BUY,0.4,Ask,3,Ask-25*Point,Ask+15*Point,"Long order #2 TP6, 0.4 lots",255,0,CLR_NONE);
   if(ticketL_2<1)
     {
      int errorL_2=GetLastError();
      Print("Error = ",ErrorDescription(errorL_2));
      return;
     }
     OrderPrint();
   int ticketL_3=OrderSend(Symbol(),OP_BUY,0.6,Ask,3,Ask-20*Point,Ask+20*Point,"Long order #3 TP9, 0.6 lots",255,0,CLR_NONE);
   if(ticketL_3<1)
     {
      int errorL_3=GetLastError();
      Print("Error = ",ErrorDescription(errorL_3));
      return;
     }
     OrderPrint();
   int ticketL_4=OrderSend(Symbol(),OP_BUY,0.8,Ask,3,Ask-15*Point,Ask+25*Point,"Long order #4 TP12, 0.8 lots",255,0,CLR_NONE);
   if(ticketL_4<1)
     {
      int errorL_4=GetLastError();
      Print("Error = ",ErrorDescription(errorL_4));
      return;
     }
     OrderPrint();
   int ticketL_5=OrderSend(Symbol(),OP_BUY,1.0,Ask,3,Ask-10*Point,Ask+30*Point,"Long order #5 TP15, 1.0 lots",255,0,CLR_NONE);
   if(ticketL_5<1)
     {
      int errorL_5=GetLastError();
      Print("Error = ",ErrorDescription(errorL_5));
      return;
     }
     OrderPrint();

   return(0);
  }
//+------------------------------------------------------------------+
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #9 (permalink)  
Old 03-01-2007, 09:52 AM
spence's Avatar
Member
 
Join Date: Jan 2007
Posts: 35
spence is on a distinguished road
Quote:
Originally Posted by remcous
Hello,

I'm very new to coding for MT4, but I've try to code your system...

If someone can help me with my first code

thank

remy


Code:
//+------------------------------------------------------------------+
//|                                                        trade.mq4 |
//|                      Copyright © 2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2004, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net/"

#include <stdlib.mqh>
#include <WinUser32.mqh>
//+------------------------------------------------------------------+
//| script "secure 10 pips a day"                                    |
//+------------------------------------------------------------------+
int start()
  {
//----
   if(MessageBox("Do you really want to order 6.00 "+Symbol()+" ?",
                 "Script",MB_YESNO|MB_ICONQUESTION)!=IDYES) return(1);
//---- Orders Short
   int ticketS_1=OrderSend(Symbol(),OP_SELL,0.2,Bid,3,Bid+30*Point,Bid-10*Point,"Short order #1 TP3, 0.2 lots",255,0,CLR_NONE);
   if(ticketS_1<1)
     {
      int errorS_1=GetLastError();
      Print("Error = ",ErrorDescription(errorS_1));
      return;
     }
     OrderPrint();
   int ticketS_2=OrderSend(Symbol(),OP_SELL,0.4,Bid,3,Bid+25*Point,Bid-15*Point,"Short order #2 TP6, 0.4 lots",255,0,CLR_NONE);
   if(ticketS_2<1)
     {
      int errorS_2=GetLastError();
      Print("Error = ",ErrorDescription(errorS_2));
      return;
     }
     OrderPrint();
   int ticketS_3=OrderSend(Symbol(),OP_SELL,0.6,Bid,3,Bid+20*Point,Bid-20*Point,"Short order #3 TP9, 0.6 lots",255,0,CLR_NONE);
   if(ticketS_3<1)
     {
      int errorS_3=GetLastError();
      Print("Error = ",ErrorDescription(errorS_3));
      return;
     }
     OrderPrint();
   int ticketS_4=OrderSend(Symbol(),OP_SELL,0.8,Bid,3,Bid+15*Point,Bid-25*Point,"Short order #4 TP12, 0.8 lots",255,0,CLR_NONE);
   if(ticketS_4<1)
     {
      int errorS_4=GetLastError();
      Print("Error = ",ErrorDescription(errorS_4));
      return;
     }
     OrderPrint();
   int ticketS_5=OrderSend(Symbol(),OP_SELL,1.0,Bid,3,Bid+10*Point,Bid-30*Point,"Short order #5 TP15, 1.0 lots",255,0,CLR_NONE);
   if(ticketS_5<1)
     {
      int errorS_5=GetLastError();
      Print("Error = ",ErrorDescription(errorS_5));
      return;
     }
     OrderPrint();
//---- Orders Long
   int ticketL_1=OrderSend(Symbol(),OP_BUY,0.2,Ask,3,Ask-30*Point,Ask+10*Point,"Long order #1 TP3, 0.2 lots",255,0,CLR_NONE);
   if(ticketL_1<1)
     {
      int errorL_1=GetLastError();
      Print("Error = ",ErrorDescription(errorL_1));
      return;
     }
     OrderPrint();
   int ticketL_2=OrderSend(Symbol(),OP_BUY,0.4,Ask,3,Ask-25*Point,Ask+15*Point,"Long order #2 TP6, 0.4 lots",255,0,CLR_NONE);
   if(ticketL_2<1)
     {
      int errorL_2=GetLastError();
      Print("Error = ",ErrorDescription(errorL_2));
      return;
     }
     OrderPrint();
   int ticketL_3=OrderSend(Symbol(),OP_BUY,0.6,Ask,3,Ask-20*Point,Ask+20*Point,"Long order #3 TP9, 0.6 lots",255,0,CLR_NONE);
   if(ticketL_3<1)
     {
      int errorL_3=GetLastError();
      Print("Error = ",ErrorDescription(errorL_3));
      return;
     }
     OrderPrint();
   int ticketL_4=OrderSend(Symbol(),OP_BUY,0.8,Ask,3,Ask-15*Point,Ask+25*Point,"Long order #4 TP12, 0.8 lots",255,0,CLR_NONE);
   if(ticketL_4<1)
     {
      int errorL_4=GetLastError();
      Print("Error = ",ErrorDescription(errorL_4));
      return;
     }
     OrderPrint();
   int ticketL_5=OrderSend(Symbol(),OP_BUY,1.0,Ask,3,Ask-10*Point,Ask+30*Point,"Long order #5 TP15, 1.0 lots",255,0,CLR_NONE);
   if(ticketL_5<1)
     {
      int errorL_5=GetLastError();
      Print("Error = ",ErrorDescription(errorL_5));
      return;
     }
     OrderPrint();

   return(0);
  }
//+------------------------------------------------------------------+

the following code will open all the positions
and you can change the number of positions and the space between

i'm still working to close them in the right order...

i'f someone have some better idea or something to change please tell me

THANKS for suggestion


Code:
//+------------------------------------------------------------------+
//|                                                  GoodGrid_v1.mq4 |
//|                                         Copyright © 2007, spence |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, spence"
#property link      "mailto:spikai@freenet.de?subject=EXPERT_ADVISOR_GoodGrid_v1"


extern int     step              = 5;     //space between the positions in pips
extern int     pos               = 5;     //how much positions should be opened in one direction max. 50
//extern int     spread            = 3;     //spread  of used pair
extern int     TakeProfit        = 999;   //normal TakeProfit limited by broker
//extern int     TakeSmallProfit   = 0;     //coded TakeProfit - could be 1pip or more
extern int     StopLoss          = 999;   //normal StopLoss limited by broker
//extern int     StopSmallLoss     = 0;     //coded StopLoss - could be 1pip or more
extern int     Slippage          = 3;
extern double  LotsBeginning     = 0.2;   //for ex. first order 0.2 second 0.4 third 0.6 ... 


//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----

//open orders *************************************************************************************

int total = OrdersTotal();                       
if (total<1)
   {
      int k = 1;
      while(k<=pos) 
         {
            int ticket=OrderSend(Symbol(),OP_BUY,LotsBeginning*k,Ask,Slippage*Point,Ask-StopLoss*Point,Ask+TakeProfit*Point,"GoodGrid_v1", 99999,0,Green);
            static int longarray[50];
            longarray[k]=ticket;
            if(ticket>0)
               {
                  if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
                     {
                        Print("BUY order opened : ",OrderOpenPrice());
                     }
                  else Print("Error opening BUY order : ",GetLastError());
                  //return(0);
               }
            ticket=OrderSend(Symbol(),OP_SELL,LotsBeginning*k,Bid,Slippage*Point,Bid+StopLoss*Point,Bid-TakeProfit*Point,"GoodGrid_v1", 99999,0,Red);
            static int shortarray[50];
            shortarray[k]=ticket;
            if(ticket>0)
               {
                  if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
                     {
                        Print("SELL order opened : ",OrderOpenPrice());
                     }
                  else Print("Error opening SELL order : ",GetLastError());
                  //return(0);
               }   
            k++;                                    
         }
   }
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #10 (permalink)  
Old 03-01-2007, 11:15 AM
Member
 
Join Date: Dec 2006
Posts: 57
remcous is on a distinguished road
Talking

very good, thank !

my suggestion/question : verify equity before open order of 6 lots...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
OILFXPRO D T S S 150 Pips per day/40,000 pips per annum el cid Manual trading systems 194 08-08-2008 07:22 PM
EA 50 pips yocy1 Expert Advisors - Metatrader 4 0 06-08-2007 12:35 PM
Something More Secure ! Baba_master Suggestions for Trading Systems 5 06-07-2007 09:13 AM
Secure Profit . Baba_master Metatrader 4 15 06-04-2007 05:47 PM
at least 10-50 pips a day elihayun Manual trading systems 48 05-28-2007 11:27 AM


All times are GMT. The time now is 07:44 AM.



Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.