X = OrderProfit( ); // запомнить величину тейкпрофитаif (OrderSelect (Ht-1,SELECT_BY_POS, MODE_HISTORY)) // если ПОСЛЕДНИЙ ордер if ( OrderType ()==OP_SELL) // СЕЛif(X < 0) // и если этот сел закрылся по стопу
//+-------------------------------------------------------+//| на H1 суточную линию между хая и лоу PROBA.mq4|//+-------------------------------------------------------+#property strictvoidOnStart()
{
// Удалим все объектыObjectsDeleteAll();
string Символ = "GBPUSD";
datetime Первый, Последний;
int Период=PERIOD_H1;
// Прежде всего узнаем дату и время последнего бара
Последний = iTime(Символ, Период, 0);
Alert("Последний бар на часовом ",Последний);
// Теперь получить начало суток, обнулив часы// Для этого преобразуем время последнего бара в структуруMqlDateTime MqlПервый;
TimeToStruct(Последний,MqlПервый);
MqlПервый.hour=0;
// Терерь надо обратно преобразовать во время
Первый=StructToTime(MqlПервый);
Alert("Первый бар на часовом ",Первый); // Смотрим начало первого бара суток// По времени определим номер первого бара сутокint НомерПервого=iBarShift(Символ, PERIOD_H1,Первый);
Alert("Первый бар на часовом под номером ",НомерПервого);
// Можно было просто узнать время начала бара на D1
// Теперь у нас есть НомерПервого бара, а номер послелнего = 0// Найдем на этом интервале номера баров, где макс и мин// iHighest и iLowest находят номер бара с макс и мин ценойint БарМакс = iHighest(Символ, // symbol = инструмента
Период, // timeframe = ПериодMODE_HIGH, // Наибольшая цена бара
НомерПервого+1, // Количество баров0); // Начальный барint БарМин = iLowest(Символ,
Период,
MODE_LOW, // Наименьшая цена бара
НомерПервого+1,
0);
Alert("Максимальный бар = ", БарМакс, " Минимальный бар = ", БарМин);
// iHigh и iLow дают макс и мин цены указанного бараdouble max_price=iHigh(Символ, Период, БарМакс);
double min_price=iLow (Символ, Период, БарМин);
Alert("Максимум цены = ", max_price, " Минимум цены = ", min_price);
// Проводим линиюObjectCreate("Макс_Мин",OBJ_TRENDBYANGLE,0, Time[БарМакс], max_price, Time[БарМин], min_price);
ObjectSet("Макс_Мин",OBJPROP_RAY,false); // Выключить свойство бесконечного луча// Теперь хорошо бы узнать уголAlert("Угол = ", ObjectGetDouble(0,"Макс_Мин",OBJPROP_ANGLE));
}
#property indicator_chart_windowexternint boom = 1;
//=================================void fishka(int ma,int mi,double map,double mip) // ф-ция
{
ObjectCreate("Макс_Мин",OBJ_TRENDBYANGLE,0, Time[ma], map, Time[mi], mip);// Проводим линиюObjectSet("Макс_Мин",OBJPROP_RAY,false); // Выключить свойство бесконечного луча
}
int deinit()
{
ObjectsDeleteAll();// Удалим все объектыreturn(0);
}
void start()
{
string Символ = "GBPUSD";
datetime Первый, Последний;
int Период=PERIOD_H1;
Последний = iTime(Символ, Период, 0);// Прежде всего узнаем дату и время последнего бараif(boom){
Alert("Последний бар на часовом ",Последний);}
MqlDateTime MqlПервый; // Теперь получить начало суток, обнулив часыTimeToStruct(Последний,MqlПервый); // Для этого преобразуем время последнего бара в структуру
MqlПервый.hour=0;
Первый=StructToTime(MqlПервый); // Терерь надо обратно преобразовать во времяif(boom){
Alert("Первый бар на часовом ",Первый);} // Смотрим начало первого бара сутокint НомерПервого=iBarShift(Символ, PERIOD_H1,Первый);// По времени определим номер первого бара сутокif(boom){
Alert("Первый бар на часовом под номером ",НомерПервого);}
// Можно было просто узнать время начала бара на D1// Теперь у нас есть НомерПервого бара, а номер послелнего = 0// Найдем на этом интервале номера баров, где макс и мин// iHighest и iLowest находят номер бара с макс и мин ценойint БарМакс = iHighest(Символ, // symbol = инструмента
Период, // timeframe = ПериодMODE_HIGH, // Наибольшая цена бара
НомерПервого+1, // Количество баров0); // Начальный барint БарМин = iLowest(Символ,Период,MODE_LOW,НомерПервого+1,0); // Наименьшая цена бараif(boom){
Alert("Максимальный бар = ", БарМакс, " Минимальный бар = ", БарМин);}
double max_price=iHigh(Символ, Период, БарМакс); // iHigh и iLow дают макс и мин цены указанного бараdouble min_price=iLow (Символ, Период, БарМин);
fishka(БарМакс,БарМин,max_price,min_price); // ф-цияif(boom){
Alert("Максимум цены = ", max_price, " Минимум цены = ", min_price);
Alert("Угол = ", ObjectGetDouble(0,"Макс_Мин",OBJPROP_ANGLE));} // Теперь хорошо бы узнать угол
}
Artem,要么是不露声色的嘲弄,要么是你不知道你在写什么!!!。
在你的上一篇文章中,你谈到了分类问题。向你解释过,不存在对分类的依赖性。
我已经看到并参与了其中一次关于按时间选择顺序的讨论。结论是,现在的订单是根据它们被发送到服务器的时间放在订单数据库中的。但从理论上讲,人们担心开发商会改变这一点。那次讨论就这样结束了。作为一个数据库专家,我向你保证,这种担心是没有根据的,改变是不可能 的。你可以把这个问题提交给开发人员。如果我写东西,我知道我写的是什么。这是编程的第50周年。如果你 在我的帖子中注意到 一些来自你的观点的混乱--亲自写信给我。我将解释,你的疑虑就会消除。但这里的争吵不太可能是适当的。我给那人写了一个剧本--他说谢谢你。这不是很好吗?
这就是所有那些突然发现自己依赖分类的人,也是这么想的。人们的逻辑崩溃了。然后对分类的依赖又消失了。但它已经有了。如果你想不依赖于你的程序,而是依赖于一个假设的不变的排序,你有这个权利,但在初学者的帮助线程中,你没有这个权利--给出一个脚本,而不提它可能有一天会失败的事实。在mql4.com上寻找这种讨论--大约6-7年前。
这就是我提到的--那个人说的是止损,而不是损失。
谢谢他说--有礼貌,但他不知道这是对还是错;)
这就是我提到的--那个人说的是止损,而不是损失。
他说谢谢你--这很有礼貌,但他不知道这是对还是错;)
仔细看看这个人写了什么。
由此可见,他指的是亏损的订单。这就是他对止损的理解。他没有止损 这个词。
我还想写的是,止损是StopLoss和TakeProfit的统称。要看到这一点,在MetaEditor中输入130,然后按F1键
停了下来。复数。
我在这里工作,你让我分心了。
我们最好是说datetime -->TimeToStruct-->MqlDateTime 现在如何转换回datetime?
仔细看一下这个人写的东西
由此可见,他指的是失去订单。这就是他对停止的理解。他没有止损 这个词。
我还想写的是,止损是StopLoss和TakeProfit的一个统称。要看到这一点,在MetaEditor中输入130,然后按F1键
停止。复数。
我在这里工作,你让我分心了。
我们最好说数据时间 --> TimeToStruct -->MqlDateTime 如何转换回数据时间?
StructToTime()
//它的返回值是0.0 角度应该被设置,然后应该得到它。
// 所以,知道了价格差异和最大与最小之间的条数,就应该计算出角度。
// 我想它可以更短......
// 返回0.0 角度应该被设置,然后获得...
// 所以,知道了价格差异和最大与最小之间的条数,应该计算出角度
// 我想它可以更短......
非常感谢 )
呃,我不知道如何添加变量--比如说,我有4个布尔变量,需要通过它们?
我明白这一点--除法后的余数应该小于或大于零--但我想不出如何做到这一点:(
对于布尔型的,方法略有不同
二进制编码。
在这种情况下,最大的N是小于16。
我不明白你想得到什么
对于布尔型的,方法略有不同
二进制编码。
在这种情况下,最大的N小于16
我不明白你想得到什么。
你是个天才!谢谢你!
我有16个选项。
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=15; A=true; B=true; C=true; D=true
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=13; A=true; B=false; C=true; D=true
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=9; A=true; B=false; C=false; D=true
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=1; A=true; B=false; C=false; D=false
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=5; A=true; B=false; C=true; D=false
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=3; A=true; B=true; C=false; D=false
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=11; A=true; B=true; C=false; D=true
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=7; A=true; B=true; C=true; D=false
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=14; A=false; B=true; C=true; D=true
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=6; A=false; B=true; C=true; D=false
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=10; A=false; B=true; C=false; D=true
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=2; A=false; B=true; C=false; D=false
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=12; A=false; B=false; C=true; D=true
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=4; A=false; B=false; C=true; D=false
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=8; A=false; B=false; C=false; D=true
2017.05.14 20:47:54.697 Brut AUDUSD,H1: N=0; A=false; B=false; C=false; D=false
非常感谢 )
// 返回0.0 角度应该被设置,然后获得...
// 所以,知道了价格差异和最大与最小之间的条数,应该计算出角度
// 我想它可以更短......
我想我需要把图表作为一个指标来看待,但我认为我需要把图表作为一个指标来看待,这样我就可以看到如何让它在一天以上的时间里发挥作用。
如果在凌晨4点--今天的酒吧还不多。在H4上,一天只有6个柱子。你必须设置搜索的柱子数量 或交叉点的数量。
长距离=趋势