フリーEAの作成 - ページ 10 1...345678910111213141516 新しいコメント Iurii Tokman 2021.05.06 18:40 #91 Konstantin Bystrov: こんにちは。mt4で、アクティブな取引セッション(10-18から設定可能)が日本のローソクの形で表示されるように、インジケータを書く ことができる人。 大丈夫 marattmb 2021.05.09 13:54 #92 こんにちは。 ここに、通貨の強さを示す情報指標を元にEAを書 ける職人さんはいないのでしょうか。アルゴリズムは以下の通りです。強い通貨と弱い通貨の出現を待っている。スクリーンショットの例では、EURとUSDです。 その差が大きい場合(EAのパラメータで設定されます)、ポジションをオープンします。スクリーンショットの例では、月曜日に行う、売りにエントリーする必要があります。EAでは、シグナル(異なる通貨の強弱の差)を取るべき時間枠のパラメータを設定する必要があります。通貨の強弱の差がシグナルになります。ストップロスは必要ありません。テイクプロフィットが必要です。価格が不利になったら、平均化しよう。Expert Advisorで、平均化ステップ、注文数、マジックナンバー、初期ロットサイズ、ロット増加係数を指定します。最近、この方法で取引していますが、非常に満足して います。私の認識では、それは聖杯の ようなものです。 ファイル: 10.7_CSS.v3.8ps_withAlertsCross_mod.mq4 85 kb 0.png 51 kb Iurii Tokman 2021.05.10 08:53 #93 Konstantin Bystrov: mt4で、アクティブな取引セッション(10-18の間で設定可能)が日本のローソクの形で表示されるように、インジケータを書く ことはできますか? //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ #property copyright "" #property link "" #property indicator_chart_window extern int NumberOfDays = 50; extern string AsiaBegin = "10:00"; extern string AsiaEnd = "18:00"; extern color AsiaColor = Goldenrod; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ void init() { DeleteObjects(); for(int i=0; i<NumberOfDays; i++) CreateObjects("AS"+i, AsiaColor); Comment(""); } //+------------------------------------------------------------------+ //| Custor indicator deinitialization function | //+------------------------------------------------------------------+ void deinit() { DeleteObjects(); Comment(""); } //+------------------------------------------------------------------+ bool CreateObjects( const string name="Rectangle", // имя прямоугольника const color clr=clrRed, // цвет прямоугольника const long chart_ID=0, // ID графика const int sub_window=0, // номер подокна datetime time1=0, // время первой точки double price1=0, // цена первой точки datetime time2=0, // время второй точки double price2=0, // цена второй точки const ENUM_LINE_STYLE style=STYLE_SOLID, // стиль линий прямоугольника const int width=2, // толщина линий прямоугольника const bool fill=false, // заливка прямоугольника цветом const bool back=false, // на заднем плане const bool selection=false, // выделить для перемещений const bool hidden=true, // скрыт в списке объектов const long z_order=0) // приоритет на нажатие мышью { //--- сбросим значение ошибки ResetLastError(); //--- создадим прямоугольник по заданным координатам if(!ObjectCreate(chart_ID,name,OBJ_RECTANGLE,sub_window,time1,price1,time2,price2)) { Print(__FUNCTION__, ": не удалось создать прямоугольник! Код ошибки = ",GetLastError()); return(false); } //--- установим цвет прямоугольника ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr); //--- установим стиль линий прямоугольника ObjectSetInteger(chart_ID,name,OBJPROP_STYLE,style); //--- установим толщину линий прямоугольника ObjectSetInteger(chart_ID,name,OBJPROP_WIDTH,width); //--- включим (true) или отключим (false) режим заливки прямоугольника ObjectSetInteger(chart_ID,name,OBJPROP_FILL,fill); //--- отобразим на переднем (false) или заднем (true) плане ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back); //--- включим (true) или отключим (false) режим выделения прямоугольника для перемещений //--- при создании графического объекта функцией ObjectCreate, по умолчанию объект //--- нельзя выделить и перемещать. Внутри же этого метода параметр selection //--- по умолчанию равен true, что позволяет выделять и перемещать этот объект ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection); ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection); //--- скроем (true) или отобразим (false) имя графического объекта в списке объектов ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden); //--- установим приоритет на получение события нажатия мыши на графике ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order); //--- успешное выполнение return(true); } //+------------------------------------------------------------------+ void DeleteObjects() { for(int i=0; i<NumberOfDays; i++) ObjectDelete("AS"+i); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ void start() { datetime dt=CurTime(); for(int i=0; i<NumberOfDays; i++) { DrawObjects(dt, "AS"+i, AsiaBegin, AsiaEnd); dt=decDateTradeDay(dt); while(TimeDayOfWeek(dt)>5) dt=decDateTradeDay(dt); } } //+------------------------------------------------------------------+ void DrawObjects(datetime dt, string no, string tb, string te) { datetime t1, t2; double p1, p2; int b1, b2; t1=StrToTime(TimeToStr(dt, TIME_DATE)+" "+tb); t2=StrToTime(TimeToStr(dt, TIME_DATE)+" "+te); if(!TimeDayOfWeek(t1)) return; b1=iBarShift(NULL, 0, t1); b2=iBarShift(NULL, 0, t2); p1=High[Highest(NULL, 0, MODE_HIGH, b1-b2, b2)]; p2=Low [Lowest(NULL, 0, MODE_LOW, b1-b2, b2)]; ObjectSet(no, OBJPROP_TIME1, t1); ObjectSet(no, OBJPROP_PRICE1, p1); ObjectSet(no, OBJPROP_TIME2, t2); ObjectSet(no, OBJPROP_PRICE2, p2); } //+------------------------------------------------------------------+ datetime decDateTradeDay(datetime dt) { int ty=TimeYear(dt); int tm=TimeMonth(dt); int td=TimeDay(dt); int th=TimeHour(dt); int ti=TimeMinute(dt); td--; if(td==0) { tm--; if(tm==0) { ty--; tm=12; } if(tm==1 || tm==3 || tm==5 || tm==7 || tm==8 || tm==10 || tm==12) td=31; if(tm==2) if(MathMod(ty, 4)==0) td=29; else td=28; if(tm==4 || tm==6 || tm==9 || tm==11) td=30; } return(StrToTime(ty+"."+tm+"."+td+" "+th+":"+ti)); } //+------------------------------------------------------------------+ 4p0ssum 2021.05.10 13:57 #94 こんにちは プログラミングの達人たちへ このロボットを完成させるために、あなたの助けを必要としています。 私自身はプログラマーではなく、このロボットはインターネットで見つけた様々なパーツを自分で組み立てているのですが、残り2つの欲しい機能が付けられないのです。よろしくお願いします。あなたにとって、それは私ほど難しいことではないと思います。もしよろしければ、2つの保留注文のうち1つがトリガーされた後に保留注文を クローズする関数を作っていただけないでしょうか。そして2番目の関数は、自動的に注文のロットを増やす必要があります(あなたが100ドルに達したときにバランス0.01ロットのすべての50ドルのための "仮定 "は、ロボットが自動的に0.02でロットを増加させます)。よろしくお願いします。 extern int TakeProfit = 100.0; extern bool AllPositions = True; // Управлять всеми позициями extern bool ProfitTrailing = True; // Тралить только профит extern int TrailingStop = 50; // Фиксированный размер трала extern int TrailingStep = 0; // Шаг трала extern bool UseSound = False; // Использовать звуковой сигнал extern string NameFileSound = "expert.wav"; // Наименование звукового файла void start() { double TakeProfitLevelB; double TakeProfitLevelS; double BuyStart = Ask + 400*_Point; double SellStart = Bid - 400*_Point; TakeProfitLevelB = BuyStart + TakeProfit*Point; TakeProfitLevelS = SellStart - TakeProfit*Point; if (Open[1]==Close[1]&& OrdersTotal()==0) { int BuyTicket = OrderSend(Symbol(),OP_BUYSTOP,0.10,BuyStart,3,0,TakeProfitLevelB,NULL,0,0,Green); int SellTicket = OrderSend(Symbol(),OP_SELLSTOP,0.10,SellStart,3,0,TakeProfitLevelS,NULL,0,0,Blue); } for (int i=0; i<OrdersTotal(); i++) { if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { if (AllPositions || OrderSymbol()==Symbol()) { TrailingPositions(); } } } } void TrailingPositions() { double pBid, pAsk, pp; pp = MarketInfo(OrderSymbol(), MODE_POINT); if (OrderType()==OP_BUY) { pBid = MarketInfo(OrderSymbol(), MODE_BID); if (!ProfitTrailing || (pBid-OrderOpenPrice())>TrailingStop*pp) { if (OrderStopLoss()<pBid-(TrailingStop+TrailingStep-1)*pp) { ModifyStopLoss(pBid-TrailingStop*pp); return; } } } if (OrderType()==OP_SELL) { pAsk = MarketInfo(OrderSymbol(), MODE_ASK); if (!ProfitTrailing || OrderOpenPrice()-pAsk>TrailingStop*pp) { if (OrderStopLoss()>pAsk+(TrailingStop+TrailingStep-1)*pp || OrderStopLoss()==0) { ModifyStopLoss(pAsk+TrailingStop*pp); return; } } } } void ModifyStopLoss(double ldStopLoss) { bool fm; fm=OrderModify(OrderTicket(),OrderOpenPrice(),ldStopLoss,OrderTakeProfit(),0,CLR_NONE); if (fm && UseSound) PlaySound(NameFileSound); } gss 2021.05.10 16:49 #95 e-News-Lucky$.mq4を見てください。 固定比例ポジションサイズ選択法を見る (R. Jones) - MQL4 and MetaTrader 4 - MQL4 Algo-Tradersフォーラム - ページ 3 (mql5.com) Фиксированно-пропорциональный метод выбора размера позиции (Р. Джонс) 2011.07.24www.mql5.com Когда-то давно читал книгу Р. Джонса, посвященную различным стратегиям управления капиталом (Биржевая игра. Сделай миллионы, играя числами... Konstantin Bystrov 2021.05.10 17:30 #96 Iurii Tokman: 指標をありがとうございます。私はIurii Tokmanの サービスをみんなに勧めています。 4p0ssum 2021.05.11 14:19 #97 gss:e-News-Lucky$.mq4を見てください。固定比例ポジションサイズ選択法を見る (R. Jones) - MQL4 and MetaTrader 4 - MQL4 Algo-Traderフォーラム - ページ 3 (mql5.com) 親愛なるgss様、私のリクエストにご興味をお持ちいただき、ありがとうございます。これが、MQL4の第一人者を取り上げることになった理由です。私が投稿したコードは、様々なExpert Advisorの助けを借りて、より正確に言えば、Trailing Stop機能のみを使用して構築したものです。残りは自分で作った(保留中の注文について)。あなたや他の達人に私のコードを見てもらい、このロボットにさらに2つの機能を追加してもらいたいのですが、よろしいですか?1) 保留注文のいずれかがトリガーされたときに、その注文を削除すること。2) 自動ロットアップ(50ドルごとに0.01、つまり100ドルでは0.02になります)よろしくお願いします。 Ivan 2021.05.12 11:36 #98 こんにちは、私のインジケーターのアイデアをご覧ください。 https://www.mql5.com/ru/forum/35071/page144#comment_22289427 Напишу советник бесплатно 2021.05.08www.mql5.com если у вас есть хороая стратегия, и вы готовы ей поделиться,могу написать советника. приглашаю обсудить публично... Yra Lomakin 2021.05.14 11:47 #99 簡単なEAを書 ける人?買いと売りの両方の注文を出すと、どちらかが閉じると同時に、同じロットの買いと売りの同じ注文が開くなど。 эдуард фершт 2021.05.19 07:09 #100 例えば、決済やベイに差がある場合、常に13pipsの差の注文を保留しておく必要が あります。つまり、取引が利益になっている場合、すなわち注文が前進している場合 --- すなわち、逆方向の動きの場合、ロックは正となります。2.ロックの一部を開く場合は、その差額の注文を出す。以上です。 もう一度 言いますが、Expert Advisor はチャート上に何のボタンも 追加せずに勝手に終了 するようなことはしないでください。 1...345678910111213141516 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんにちは。mt4で、アクティブな取引セッション(10-18から設定可能)が日本のローソクの形で表示されるように、インジケータを書く ことができる人。
大丈夫
こんにちは。
ここに、通貨の強さを示す情報指標を元にEAを書 ける職人さんはいないのでしょうか。アルゴリズムは以下の通りです。強い通貨と弱い通貨の出現を待っている。スクリーンショットの例では、EURとUSDです。 その差が大きい場合(EAのパラメータで設定されます)、ポジションをオープンします。スクリーンショットの例では、月曜日に行う、売りにエントリーする必要があります。EAでは、シグナル(異なる通貨の強弱の差)を取るべき時間枠のパラメータを設定する必要があります。通貨の強弱の差がシグナルになります。ストップロスは必要ありません。テイクプロフィットが必要です。価格が不利になったら、平均化しよう。Expert Advisorで、平均化ステップ、注文数、マジックナンバー、初期ロットサイズ、ロット増加係数を指定します。最近、この方法で取引していますが、非常に満足して います。私の認識では、それは聖杯の ようなものです。
mt4で、アクティブな取引セッション(10-18の間で設定可能)が日本のローソクの形で表示されるように、インジケータを書く ことはできますか?
こんにちは プログラミングの達人たちへ このロボットを完成させるために、あなたの助けを必要としています。
私自身はプログラマーではなく、このロボットはインターネットで見つけた様々なパーツを自分で組み立てているのですが、残り2つの欲しい機能が付けられないのです。よろしくお願いします。あなたにとって、それは私ほど難しいことではないと思います。もしよろしければ、2つの保留注文のうち1つがトリガーされた後に保留注文を クローズする関数を作っていただけないでしょうか。そして2番目の関数は、自動的に注文のロットを増やす必要があります(あなたが100ドルに達したときにバランス0.01ロットのすべての50ドルのための "仮定 "は、ロボットが自動的に0.02でロットを増加させます)。よろしくお願いします。
e-News-Lucky$.mq4を見てください。
固定比例ポジションサイズ選択法を見る (R. Jones) - MQL4 and MetaTrader 4 - MQL4 Algo-Tradersフォーラム - ページ 3 (mql5.com)
e-News-Lucky$.mq4を見てください。
固定比例ポジションサイズ選択法を見る (R. Jones) - MQL4 and MetaTrader 4 - MQL4 Algo-Traderフォーラム - ページ 3 (mql5.com)
こんにちは、私のインジケーターのアイデアをご覧ください。
https://www.mql5.com/ru/forum/35071/page144#comment_22289427
、取引が利益になっている場合、すなわち注文が前進している場合 --- すなわち、逆方向の動きの場合、ロックは正となります。
2.ロックの一部を開く場合は、その差額の注文を出す。
以上です。 もう一度 言いますが、Expert Advisor はチャート上に何のボタンも 追加せずに勝手に終了 するようなことはしないでください。