Please fix this indicator or EA - page 18

 

Pls help recoding this indicator!!!!!

I use this indicator on the D1 time frame only and I want to ask somebody if can recode the indicator so that the first dot of each signal appears in a different color than red..I need just the first dot of buy or sell signal to be different than red color. I marked on the attached picture which dots I mean....Also if somebody can add a sound alert to show the beginning or when the first different color dot appears...Thank you in advance

 

Help Needed ......!!!

Hi Guys,

I fopund this "Condarolina V2" griding EA and i like to use as i'm using in my live account but it is very tyering as i do trade in it manually!!

i need someone to help me to modefy this EA i found and to do some modifications, or if no can do then maybe cooding a new one from scratch . and i would appreciate if you make works on 4&5 digit prokers

ok, rules

1 - I DO NOT want it to be fully automated ea as i only trust my eyes, (i want it to be on the chart (Drag and drop))

2- (on the chart (drug and drop)) part will contain these opthions:

1- Placing Buy Stop Order(S)

2- Placing Sell Stop Order(S)

3- Delete Buy Stop Order(S) (Pending once Only)

4- Delete Sell Stop Order(S) (Pending once Only)

5- Close All Buy Order(S) (Open once Only)

6- Close All Sell Order(S) (Open once Only)

7- Close All Order(S) (Open & Pending Once)

i attached another ea "Visual Trading Center" that i use to give you an idea of how i would like this ea to be....

i know it it too much, but as i said i do trade manually,,,, so i need all that at a mouse drag and drop...

3- Placing the Pending Order(S)

- Profit Terget will be the same for all direction deals..

- Stop loss is same also (0=No stop loss)...

- All pending orders will have the same Lot value....

- Grid (spacing between orders) in pips

- number of Levels =(Profit Target (in pips)) / Grid (Spacing between orders in pips). i.e. (Profit Target (500 pip)) / Grid (Spacing between orders 25 pips) = 500/25 = . i.e. 20 level

4- Multiplication / Increment (Option)

- Multiplication factor X, i.e. X=2

Level 1 = 0.1

Level 2 = 0.2

Level 3 = 0.4

Level 4 = 0.8

Level 5 = 0.16

- Increment Factor X i.e. X=2

Level 1 = 0.1

Level 2 = 0.3

Level 3 = 0.5

Level 4 = 0.7

Level 5 = 0.9

Sorry for my english .... looking to see this ea working on my charts

Thank you

Files:
 

Pls help recoding this indicator!!!!!

I use this indicator on the D1 time frame only and I want to ask somebody if can recode the indicator so that the first dot of each signal appears in a different color than red..I need just the first dot of buy or sell signal to be different than red color. I marked on the attached picture which dots I mean....Also if somebody can add a sound alert to show the beginning or when the first different color dot appears...Thank you in advance

 
 

Help adding a pice of code

Hi,

Could anybody add a pice of code to the EA,

so that also a pending buy/sell order can be moved by the mouse

your help is highly appreciated

thx

Files:
 

Indicator HELP Needed

Hi there I stumbled across the code below which really helps me determine a trade entry (simple enough for me at least). I am hoping someone can add/modify the code to send an email when (line created on the chart) would cross a single SMA?

Please help me...

I have no idea how to code, but something like if-line goes above sma create and send a buy email. and if-line goes below sma create and send a sell email...

code below:

#property indicator_chart_window

#property indicator_buffers 1

#property indicator_color1 White

#property indicator_color2 White

#property indicator_color3 White

//---- input parameters

extern int kama_period = 20;

extern double fast_ma_period = 2.0;

extern double slow_ma_period = 60.0;

//---- buffers

double KAMA[];

//+------------------------------------------------------------------+

//| Custom indicator initialization function |

//+------------------------------------------------------------------+

int init()

{

//---- indicators

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,KAMA);

SetIndexLabel(0, "KAMA");

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator deinitialization function |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator iteration function |

//+------------------------------------------------------------------+

int start()

{

int counted_bars=IndicatorCounted();

//----

int i = Bars - counted_bars;

double fastest = 2 / (fast_ma_period + 1);

double slowest = 2 / (slow_ma_period + 1);

while(i>0){

double er = 1;

double signal = MathAbs(Close - Close);

double noise = 0;

for (int j=0; j<kama_period; j++)

noise += MathAbs(Close - Close);

if (noise > 0)

er = signal / noise;

double sc = MathPow((er * (fastest - slowest) + slowest), 2);

KAMA = KAMA + sc * (Close - KAMA);

i--;

}

//----

return(0);

}

//+------------------------------------------------------------------+

 

How to reverse trade ?

Hi,

I am attaching a piece of code from an EA, I am testing with.. where I need all Buy's to be Sell's and Sell to Buy. Just reverse.

int deinit() {

return (0);

}

double getStoploss(int ai_0) {

if (Use_Auto_Stoploss == TRUE) return (gd_140);

if (ai_0 == gi_156) return (Ask - Stoploss * Point);

return (Bid + Stoploss * Point);

}

int getSignal() {

double l_icustom_0 = iCustom(NULL, 0, Indicator, 0, 0);

double l_icustom_8 = iCustom(NULL, 0, Indicator, 1, 0);

double l_icustom_16 = iCustom(NULL, 0, Indicator, 3, 0);

double l_icustom_24 = iCustom(NULL, 0, Indicator, 4, 0);

if (l_icustom_0 != 0.0 && l_icustom_0 != gi_180 && g_time_148 != Time[0]) {

gi_124 = gi_156;

gd_132 = NormalizeDouble(Close[0], Digits);

gt_unused_128 = g_time_148;

g_time_148 = Time[0];

gd_140 = NormalizeDouble(l_icustom_16, Digits);

}

if (l_icustom_8 != 0.0 && l_icustom_8 != gi_180 && g_time_148 != Time[0]) {

gi_124 = gi_160;

gd_132 = NormalizeDouble(Close[0], Digits);

gt_unused_128 = g_time_148;

g_time_148 = Time[0];

gd_140 = NormalizeDouble(l_icustom_24, Digits);

}

return (0);

}

int trade() {

int l_error_4;

int l_count_0 = 0;

if (gi_124 == gi_156 && NormalizeDouble(Close[0], Digits) == gd_132) {

while (l_count_0 < 5) {

g_ticket_176 = OrderSend(Symbol(), OP_BUY, Lots, Ask, g_slippage_172, getStoploss(gi_156), Ask + Max_Target * Point, "finisher", 16384, 0, Blue);

l_count_0++;

if (g_ticket_176 > 0) {

gi_124 = 0;

break;

}

l_error_4 = GetLastError();

Print("error ; ", l_error_4);

if (l_error_4 == 135/* PRICE_CHANGED */) RefreshRates();

}

}

if (gi_124 == gi_160 && NormalizeDouble(Close[0], Digits) == gd_132) {

while (l_count_0 < 5) {

g_ticket_176 = OrderSend(Symbol(), OP_SELL, Lots, Bid, g_slippage_172, getStoploss(gi_160), Bid - Max_Target * Point, "finisher", 16384, 0, Red);

l_count_0++;

if (g_ticket_176 > 0) {

gi_124 = 0;

break;

}

l_error_4 = GetLastError();

Print("error ; ", l_error_4);

if (l_error_4 == 135/* PRICE_CHANGED */) RefreshRates();

}

}

return (0);

}

int exitTrade() {

int l_ord_close_0;

int l_error_16 = -1;

int l_ord_total_20 = OrdersTotal();

for (int l_pos_24 = 0; l_pos_24 < l_ord_total_20; l_pos_24++) {

if (gi_124 == gi_164 || (gi_124 == gi_160 && Exit_With_Opposing_Signal == TRUE)) {

if (OrderSelect(l_pos_24, SELECT_BY_POS, MODE_TRADES)) {

if (OrderType() != OP_BUY) continue;

while (true) {

l_ord_close_0 = OrderClose(OrderTicket(), OrderLots(), Bid, g_slippage_172, CLR_NONE);

if (l_ord_close_0 != 1) {

l_error_16 = GetLastError();

Print("LastError = ", l_error_16);

} else {

l_error_16 = 0;

break;

}

if (l_error_16 != 135/* PRICE_CHANGED */) break;

RefreshRates();

}

}

Print("Error when order select ", GetLastError());

} else {

if (gi_124 == gi_168 || (gi_124 == gi_156 && Exit_With_Opposing_Signal == TRUE)) {

if (OrderSelect(l_pos_24, SELECT_BY_POS, MODE_TRADES)) {

if (OrderType() != OP_SELL) continue;

while (true) {

l_ord_close_0 = OrderClose(OrderTicket(), OrderLots(), Ask, g_slippage_172, CLR_NONE);

if (l_ord_close_0 != 1) {

l_error_16 = GetLastError();

Print("LastError = ", l_error_16);

} else {

l_error_16 = 0;

break;

}

if (l_error_16 != 135/* PRICE_CHANGED */) break;

RefreshRates();

}

}

Print("Error when order select ", GetLastError());

}

}

}

if (l_error_16 == 0/* NO_ERROR */ && gi_124 == gi_164 | gi_124 == gi_168) gi_124 = 0;

return (0);

}

int Trailing_Stop_Handler() {

int li_0;

double l_price_4;

int li_12;

int l_ord_total_16 = OrdersTotal();

for (int l_count_20 = 0; l_count_20 < l_ord_total_16; l_count_20++) {

li_0 = getPipsMoveOnOpenedTrade(l_count_20);

if (li_0 != gi_180) {

if (Use_Trailing_Stop == TRUE) {

li_12 = getTrailingStop(li_0, Set_Min_Target_If_Price_Move_Is, Min_Target);

if (OrderType() == OP_BUY && li_12 != gi_180) {

l_price_4 = OrderOpenPrice() + li_12 * Point;

if (l_price_4 > NormalizeDouble(OrderStopLoss(), Digits)) {

if (OrderModify(OrderTicket(), OrderOpenPrice(), l_price_4, OrderTakeProfit(), 0, CLR_NONE)) return (1);

Print(" OrderTicket()", OrderTicket(), " OrderLots()", OrderLots(), " GetLastError() ", GetLastError());

Print(" could not modify order for tailing stop");

}

}

if (OrderType() == OP_SELL && li_12 != gi_180) {

l_price_4 = OrderOpenPrice() - li_12 * Point;

if (l_price_4 < NormalizeDouble(OrderStopLoss(), Digits)) {

if (OrderModify(OrderTicket(), OrderOpenPrice(), l_price_4, OrderTakeProfit(), 0, CLR_NONE)) return (1);

Print(" OrderTicket()", OrderTicket(), " OrderLots()", OrderLots(), " GetLastError() ", GetLastError());

Print(" could not modify order for tailing stop");

}

}

}

}

}

return (0);

}

int getTrailingStop(int ai_0, int ai_4, int ai_8) {

int li_ret_12 = gi_180;

if (ai_0 >= MathAbs(ai_4)) li_ret_12 = ai_8;

if (ai_0 >= MathAbs(ai_4) + 20.0) li_ret_12 = ai_8 + 10;

if (ai_0 >= MathAbs(ai_4) + 40.0) li_ret_12 = ai_8 + 20;

if (ai_0 >= MathAbs(ai_4) + 60.0) li_ret_12 = ai_8 + 30;

return (li_ret_12);

}

int getPipsMoveOnOpenedTrade(int a_pos_0) {

int li_ret_4 = gi_180;

if (OrderSelect(a_pos_0, SELECT_BY_POS, MODE_TRADES)) {

if (OrderCloseTime() == 0) {

if (OrderType() == OP_BUY) li_ret_4 = (NormalizeDouble(OrderClosePrice(), Digits) - NormalizeDouble(OrderOpenPrice(), Digits)) / Point;

else

if (OrderType() == OP_SELL) li_ret_4 = (NormalizeDouble(OrderOpenPrice(), Digits) - NormalizeDouble(OrderClosePrice(), Digits)) / Point;

}

} else Print("Error when order select ", GetLastError());

return (li_ret_4);

}

int start() {

if(!isTradeHour() )

{ findstart="wait_to_start";

system="start";

}

getSignal();

exitTrade();

Trailing_Stop_Handler();

if(isTradeHour()) { system="next"; trade(); }

return (0);

}
 
 

Fix ATR indicator

Hi,

can anyone add an additional feature to this ATR indicator (left upper corner)?

I would like to have the pips counted and subtracted to the current price. For example: the current price is 1.32271 EUR/USD we count and subtract the 559 pip of SL to our current price, the same for the pips of TP1 and so on.

It shall look like that:

100 % ATR (20): 559 pip Stop Loss: 1.31681 (Lo) - 1.32830 (Sh)

50 % ATR (20): 280 pip TP1: 1.32552 - 1.31991

200 % ATR (20): 1119 pip TP2: 1.33390 - 1.31152

THIS BAR 103 pip TP3: 1.32374 - 1.32168

Can anyone code this?

Thank you!

Files:
 

indicators

Hi

May I know where I can download the indicatos that attached on chart

( Top Left, Bottom Left, Bottom Right and ) and Indicator at indicator window.

Thank you.

Quentin

Reason: