Bot Telegram pour l'analyse des options

Les options sont un type de titres qui suscitent un intĂ©rĂȘt constant mĂȘme parmi les traders dĂ©butants. De nombreux articles ont Ă©tĂ© Ă©crits sur les options, nous allons donc omettre la partie introductive et supposer que le lecteur est familiarisĂ© avec les termes de base du trading d'options. Si quoi que ce soit, alors leur interprĂ©tation est facile Ă  trouver sur Internet.





AprĂšs la premiĂšre connaissance de la thĂ©orie, les traders dĂ©butants en options se posent une question: dans quelles conditions cet ensemble d'options rapportera-t-il un profit et de quelle nature. MĂȘme un trader d'options expĂ©rimentĂ© ne peut pas rĂ©pondre immĂ©diatement Ă  cette question si vous avez plus d'une option. Cela nĂ©cessite une analyse du portefeuille d'options (un ensemble d'options et, Ă©ventuellement, des futures), qui se fait le plus clairement sous forme graphique, sur le diagramme de la dĂ©pendance du rĂ©sultat Ă  la valeur de l'actif sous-jacent. Actuellement, il existe plusieurs sites pour cela, ainsi que des programmes individuels.





L'auteur de l'article a mis en place l'analyse des options Ă  l'aide d'un tĂ©lĂ©gramme bot , qui permet d'obtenir rapidement des informations sur le portefeuille d'investissement sur un smartphone. 





Nous supposerons qu'en plus des options, le lecteur est familiarisé avec les robots télégrammes. Par conséquent, il n'y aura aucune description de la création d'un bot depuis la réception d'un jeton jusqu'au traitement du clavier. Au lieu de cela, nous énumérons les problÚmes conceptuels qui se sont posés lors de la création du programme et comment les résoudre.





Se souvenir de l'état du bot entre les webhooks

Le bot reçoit des messages de l'utilisateur via le mĂ©canisme de webhook intĂ©grĂ© au tĂ©lĂ©gramme. Chaque webhook redĂ©marre le programme, mais chaque utilisateur a besoin d'un ensemble de donnĂ©es diffĂ©rent. Les utilisateurs sont identifiĂ©s en visualisant le flux d'entrĂ©e :





$id_init = file_get_contents('php://input');

$id=sbs($id_init, '"from":{"id":',',"is_bot":');  //      

function sbs ($str,$m1,$m2){     //  str     - m1  m2

$p1=strpos($str,$m1)+strlen($m1);  // - 

$p2=strpos($str,$m2);

return substr($str,$p1,$p2-$p1);

}
      
      



La structure de donnĂ©es suivante est construite pour chaque utilisateur :





  1. : – , ,  ( message_Id) , ( , ..), 





  2. (  , , , , )  









.





  , y=kx+b, 





  y –   /





        –





  png GD :





1) -  (, )





2) (   , ,   Y)





3) , X    , Y – , :





$typ – ,





$q – ( )





$cena –





$strike –





$x0 –





$sx –





function pparr($typ, $q, $cena, $strike,$x0,$sx)//    -  x=>y   

// ,  ( ),     ( ) 

    if ($q<0)  {    $q=-$q;

                    $drct='-';

            }                   

            else $drct='+';

     $a=array();

     $b=array();

     $delta=$sx;  //       $scalx

     for ($i=0;$i<740;$i++){   //   740  

        $xkk=$x0+$delta*$i; //   X

        if ($typ=='fut') {

            if ($drct=='+') $a[$xkk]=($xkk-$cena)*$q;

            else $a[$xkk]=(-$xkk+$cena)*$q;

        }

        if ($typ=='call'){

            if ($drct=='+') {  if ($xkk<=$strike) $a[$xkk]=-$cena*$q; else $a[$xkk]=$q*($xkk-$strike-$cena);}

            elseif ($xkk<=$strike) $a[$xkk]=$q*$cena; else $a[$xkk]=(-$xkk+$strike+$cena)*$q;}

            

        }

        if ($typ=='put'){

            if ($drct=='+') {  if ($xkk<=$strike) $a[$xkk]=(-$xkk+$strike-$cena)*$q; else $a[$xkk]=-$q*$cena;}

            elseif ($xkk<=$strike) $a[$xkk]=($xkk-$strike+$cena)*$q; else $a[$xkk]=$cena*$q;}

            

        }

     $b[(string)$xkk]=(string)$a[$xkk];

     }

return $b;         

};
      
      



4)      , ( )  ( ). , know-how ,   / Y. - X+,X-,Y+,Y- . , .





.  . – , .  , , ().  , , , , ( , ).  , . ( - ) ,   .  , ( , , )   () . .  , -,   , . 





- , .





, :





=+(-_)*;





_ , 





–   , , , ,





– , , , ,





  , , . , , , .





- :  , , ,  . , , . .





:





Une entrée dans le portefeuille d'achat d'une option d'achat d'exercice 75000 date d'expiration 06/03/2021 au prix de 25
"" 75000 03.06.2021 25
Graphique de profit / perte pour l'option d'achat achetée en fonction de la valeur de l'actif sous-jacent à la date d'expiration
/ ""

=23.





:   ( ) [] 03.06.2021  75000 ,  23 . 75023 , .





:   23. , , 23.





– .





.





Une entrée dans le portefeuille de vente d'une option de vente d'exercice 72750 au prix de 44 avec une date d'expiration du 06/03/2021
"" 72750 44 03.06.2021
Un graphique de la dépendance du profit / perte sur une option de vente vendue sur la valeur de l'actif sous-jacent à la date d'expiration
/ ""

= 5436.





, 72750 44. 72706 . .





– , 72706. !   (5436), .





?  5436 44? , . , 3 .





.





?





Une entrée dans le portefeuille de vente de l'option de vente d'exercice 72750 et de vente de l'option d'achat d'exercice 75000
"" 72750 "" 75000
Un graphique de la dépendance du profit / perte du portefeuille sur la valeur de l'actif sous-jacent à la date d'expiration
/

!





– – , 72700  ( «»)  75190 ( «»). 





, .





,   72700 75190,  , .





-

:













  • «»,  ,   (   )









  • , , png,





  • , ,  : « », « », « »  





«»  InlineKeyboard.





  :





  • «-» , ,





  • «»   . ,





  •    .





.





,     « »( , ).





- .  , : (Si),  (BR), (RI). .





- , .





- / (P/L  ).





- t.me/@test09062020bot.  « ».








All Articles