|
@@ -10,6 +10,8 @@
|
|
|
sinput string str = "<><><><><><> Object Name <><><><><><>";
|
|
sinput string str = "<><><><><><> Object Name <><><><><><>";
|
|
|
input string object_name = "line";
|
|
input string object_name = "line";
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+int ind = 0;
|
|
|
string trend;
|
|
string trend;
|
|
|
bool bearish_found = false;
|
|
bool bearish_found = false;
|
|
|
bool bullish_found = false;
|
|
bool bullish_found = false;
|
|
@@ -190,13 +192,15 @@ void choch(int i)
|
|
|
if(close < low)
|
|
if(close < low)
|
|
|
{
|
|
{
|
|
|
|
|
|
|
|
- ObjectCreate(0,"line3"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),close);
|
|
|
|
|
|
|
+ ObjectCreate(0,"line3"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i));
|
|
|
ObjectSetString(0,"line3"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"choch");
|
|
ObjectSetString(0,"line3"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"choch");
|
|
|
ObjectCreate(0,"line8"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_ARROW_DOWN,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i)+100*Point());
|
|
ObjectCreate(0,"line8"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_ARROW_DOWN,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i)+100*Point());
|
|
|
ObjectSetInteger(0,"line8"+iTime(Symbol(),PERIOD_CURRENT,i),OBJPROP_COLOR,clrRed);
|
|
ObjectSetInteger(0,"line8"+iTime(Symbol(),PERIOD_CURRENT,i),OBJPROP_COLOR,clrRed);
|
|
|
|
|
+
|
|
|
Print("last bos index is ",Store_bos_last_index);
|
|
Print("last bos index is ",Store_bos_last_index);
|
|
|
- hi = iHigh(Symbol(),PERIOD_CURRENT,Store_bos_last_index+1);
|
|
|
|
|
- lo = iLow(Symbol(),PERIOD_CURRENT,Store_bos_last_index+1);
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
low = iLow(Symbol(),PERIOD_CURRENT,i);
|
|
low = iLow(Symbol(),PERIOD_CURRENT,i);
|
|
|
Print("low update due to choch : ", low);
|
|
Print("low update due to choch : ", low);
|
|
|
trend = "downtrend";
|
|
trend = "downtrend";
|
|
@@ -216,7 +220,7 @@ void choch(int i)
|
|
|
if(close > high)
|
|
if(close > high)
|
|
|
{
|
|
{
|
|
|
|
|
|
|
|
- ObjectCreate(0,"line4"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),close);
|
|
|
|
|
|
|
+ ObjectCreate(0,"line4"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i));
|
|
|
ObjectSetString(0,"line4"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"choch");
|
|
ObjectSetString(0,"line4"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"choch");
|
|
|
|
|
|
|
|
ObjectCreate(0,"line7"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_ARROW_UP,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i)-100*Point());
|
|
ObjectCreate(0,"line7"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_ARROW_UP,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i)-100*Point());
|
|
@@ -224,9 +228,22 @@ void choch(int i)
|
|
|
|
|
|
|
|
Print("last bos index is ",Store_bos_last_index);
|
|
Print("last bos index is ",Store_bos_last_index);
|
|
|
|
|
|
|
|
- hi = iHigh(Symbol(),PERIOD_CURRENT,Store_bos_last_index+1);
|
|
|
|
|
- lo = iLow(Symbol(),PERIOD_CURRENT,Store_bos_last_index+1);
|
|
|
|
|
|
|
+ for(int j=Store_bos_last_index; j < iBars(Symbol(),PERIOD_CURRENT); j++)
|
|
|
|
|
+ {
|
|
|
|
|
+ if(checkCandle(j) == "Bearish")
|
|
|
|
|
+ {
|
|
|
|
|
+ ind = j;
|
|
|
|
|
+ bearish_found = true;
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
+ if(bearish_found == true)
|
|
|
|
|
+ {
|
|
|
|
|
+ Print("inde xi ",ind);
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
|
|
|
|
|
high = iHigh(Symbol(),PERIOD_CURRENT,i);
|
|
high = iHigh(Symbol(),PERIOD_CURRENT,i);
|
|
@@ -254,7 +271,7 @@ void third_Condition(int i)
|
|
|
|
|
|
|
|
if(low2 < low)
|
|
if(low2 < low)
|
|
|
{
|
|
{
|
|
|
- ObjectCreate(0,"line5"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),low2);
|
|
|
|
|
|
|
+ ObjectCreate(0,"line5"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iLow(Symbol(),PERIOD_CURRENT,i));
|
|
|
ObjectSetString(0,"line5"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
|
|
ObjectSetString(0,"line5"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
|
|
|
low = low2;
|
|
low = low2;
|
|
|
Print("low update due to third condition",low);
|
|
Print("low update due to third condition",low);
|
|
@@ -267,7 +284,7 @@ void third_Condition(int i)
|
|
|
|
|
|
|
|
if(high2 > high)
|
|
if(high2 > high)
|
|
|
{
|
|
{
|
|
|
- ObjectCreate(0,"line6"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),high2);
|
|
|
|
|
|
|
+ ObjectCreate(0,"line6"+iTime(Symbol(),PERIOD_CURRENT,i),OBJ_TEXT,0,iTime(Symbol(),PERIOD_CURRENT,i),iHigh(Symbol(),PERIOD_CURRENT,i));
|
|
|
ObjectSetString(0,"line6"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
|
|
ObjectSetString(0,"line6"+iTime(Symbol(),PERIOD_CURRENT,i), OBJPROP_TEXT,"3_C");
|
|
|
high = high2;
|
|
high = high2;
|
|
|
Print("high update due to third condition",high);
|
|
Print("high update due to third condition",high);
|